last-modified

How can I find last modified timestamp for a table in Hive?

烈酒焚心 提交于 2021-02-18 10:45:06
问题 I'm trying to fetch last modified timestamp of a table in Hive. 回答1: Please use the below command: show TBLPROPERTIES table_name ('transient_lastDdlTime'); 回答2: Get the transient_lastDdlTime from your Hive table. SHOW CREATE TABLE table_name; Then copy paste the transient_lastDdlTime in below query to get the value as timestamp. SELECT CAST(from_unixtime(your_transient_lastDdlTime_value) AS timestamp); 回答3: You may get the timestamp by executing describe formatted table_name 回答4: you can

Get the timestamp of last modification of TYPO3 page, difference between tstamp and SYS_LASTCHANGED

好久不见. 提交于 2021-02-07 12:50:22
问题 What is the right way to get the date of last modification of a TYPO3 page (and its *tt_content*) ? There are 2 fields in properties of table pages : tstamp and SYS_LASTCHANGED. In this article SYS_LASTCHANGED are recommended. But what is the role of tstamp in this case ? Which one should we use ? 回答1: tstamp is modification time of the page record itself. SYS_LASTCHANGED is the modification time of the page OR its content. It's updated once the page is rendered in the frontend, not right

Which one to use : Expire Header, Last Modified Header or ETags

久未见 提交于 2021-02-05 12:43:11
问题 I am running PHP on Apache, and am confused about how to implement server-side caching, in order to make the site load faster. What is the difference between the Expires , Last-Modified and ETag headers, and which one should be used in what situation? 回答1: You can use the Expires header in conjunction but regardless of the other two. It's universally supported by proxies and browser caches. The difference between ETag and Last-Modified stamps is more semantic. ETags are opaque to clients. It

HTTP缓存和CDN缓存

僤鯓⒐⒋嵵緔 提交于 2020-04-02 07:56:24
一 http缓存 1.1缓存的分类: http中具有缓存功能的是:1、浏览器缓存、 2、缓存代理服务器。 1.2 什么是缓存: http缓存的是指:当Web请求抵达缓存时, 如果本地有“已缓存的”副本,就可以从本地存储设备而 不是从原始服务器中提取这个文档。 1.3 缓存的好处有: 1. 减少了冗余的数据传输,节省了网费。 2. 减少了服务器的负担, 大大提高了网站的性能 3. 加快了客户端加载网页的速度。优化用户体验 1.4 缓存示意图: 第一次请求: 第一次请求,无论是静态文件还是其他文件,都是从服务器那里读取的。因此没有缓存之说。等第一次请求完,浏览器就有缓存了,然后整个的加载过程就完全不一样了。看下图: 浏览器再次请求  流程图解释: 浏览器再次请求,情况就不一样了。首先会读取缓存,然后判断缓存是否过期,如果不过期,就直接读取缓存。 否则,判断浏览器返回的头部信息是否存在Etag,如果存在,浏览器会像服务器发送带有If-None-Match的请求头,来和服务器返回的Etag做对比, 如果if-None-Match和Etag相等。说明缓存没有更新,服务器返回304,浏览器继续从缓存读取相应的内容。如果if-None-Match和Etag不等,则服务器返回200,浏览器重新需 要从服务器获取内容。   如果服务器的返回信息里面没有Etag,则判断浏览器的返回信息里是否有Last

http缓存与cdn相关技术

廉价感情. 提交于 2020-03-31 16:07:33
一 http缓存 1.1缓存的分类: http中具有缓存功能的是:1、浏览器缓存、 2、缓存代理服务器。 1.2 什么是缓存: http缓存的是指:当Web请求抵达缓存时, 如果本地有“已缓存的”副本,就可以从本地存储设备而 不是从原始服务器中提取这个文档。 1.3 缓存的好处有: 1. 减少了冗余的数据传输,节省了网费。 2. 减少了服务器的负担, 大大提高了网站的性能 3. 加快了客户端加载网页的速度。优化用户体验 1.4 缓存示意图: 第一次请求: 第一次请求,无论是静态文件还是其他文件,都是从服务器那里读取的。因此没有缓存之说。等第一次请求完,浏览器就有缓存了,然后整个的加载过程就完全不一样了。看下图: 浏览器再次请求  流程图解释: 浏览器再次请求,情况就不一样了。首先会读取缓存,然后判断缓存是否过期,如果不过期,就直接读取缓存。 否则,判断浏览器返回的头部信息是否存在Etag,如果存在,浏览器会像服务器发送带有If-None-Match的请求头,来和服务器返回的Etag做对比, 如果if-None-Match和Etag相等。说明缓存没有更新,服务器返回304,浏览器继续从缓存读取相应的内容。如果if-None-Match和Etag不等,则服务器返回200,浏览器重新需 要从服务器获取内容。   如果服务器的返回信息里面没有Etag,则判断浏览器的返回信息里是否有Last

浏览器缓存

风流意气都作罢 提交于 2020-03-16 20:17:48
1、基本介绍 浏览器缓存是指浏览器会存储用户最近请求过的资源,当用户再次请求同一资源时,浏览器可以直接从本地读取 这样,不仅可以提高浏览器的加载速度,也能减轻服务器的负载压力,可以说是一举两得 具体而言,浏览器的缓存策略分为两种,一种是强缓存(又称本地缓存),一种是弱缓存(又称协商缓存) 它们的行为会根据响应头和请求头的特定字段决定 强缓存与 expires 和 cache-control 字段有关 弱缓存与 etag / if-none-match 和 last-modified / if-modified-since 字段有关 2、本地缓存 本地缓存:当一个请求发生时,浏览器自己决定是否从缓存中读取数据 在浏览器第一次请求资源时,服务器会返回资源,并在响应中设置 expires 或 cache-control 字段 然后浏览器会把这些信息都缓存下来,当再次请求资源时,浏览器先不向服务器发送请求 而是根据该资源的 expires 或 cache-control 字段判断缓存的资源是否已经失效 如果缓存没有失效,那么直接读取缓存拿到资源 exprise :表示这个资源的失效时间,它的值是一个绝对时间的 GMT 格式字符串 cache-control :表示这个资源的失效时间,主要通过该字段的 max-age 进行设置,它的值是一个相对时间 此外,这个字段还能设置其它的值

详细剖析强缓存和协商缓存

余生长醉 提交于 2020-03-05 16:14:53
Cache-control 1.public: 所有内容都将被缓存(客户端和代理服务器都可缓存) 。具体来说响应可被任何中间节点缓存,如 Browser <-- proxy1 <-- proxy2 <-- Server,中间的proxy可以缓存资源,比如下次再请求同一资源proxy1直接把自己缓存的东西给 Browser 而不再向proxy2要。 private:所有内容**只有客户端可以缓存,Cache-Control的默认取值。**具体来说,表示中间节点不允许缓存,对于Browser <-- proxy1 <-- proxy2 <-- Server,proxy 会老老实实把Server 返回的数据发送给proxy1,自己不缓存任何数据。当下次Browser再次请求时proxy会做好请求转发而不是自作主张给自己缓存的数据。 no-cache:客户端缓存内容**,是否使用缓存则需要经过协商缓存来验证决定。表**示不使用 Cache-Control的缓存控制方式做前置验证, 而是使用 Etag 或者Last-Modified字段来控制缓存 。需要注意的是,no-cache这个名字有一点误导。设置了no-cache之后, 并不是说浏览器就不再缓存数据,只是浏览器在使用缓存数据时,需要先确认一下数据是否还跟服务器保持一致。 no-store:所有内容都不会被缓存,即不使用强制缓存

http缓存详解

心已入冬 提交于 2020-03-03 00:34:52
单独拎出来的缓存问题,http的缓存 前后端的http交互中,使用缓存能很大程度上的提升效率,而且基本上对性能有要求的前端项目都是必用缓存的。 强缓存与弱缓存 缓存可以简单的划分成两种类型: 强缓存 ( 200 from cache )与 协商缓存 ( 304 )。 区别简述如下: 强缓存( 200 from cache )时,浏览器如果判断本地缓存未过期,就直接使用,无需发起http请求 协商缓存( 304 )时,浏览器会向服务端发起http请求,然后服务端告诉浏览器文件未改变,让浏览器使用本地缓存 对于协商缓存,使用 Ctrl + F5 强制刷新可以使得缓存无效。但是对于强缓存,在未过期时,必须更新资源路径才能发起新的请求(更改了路径相当于是另一个资源了,这也是前端工程化中常用到的技巧)。 缓存头部简述 上述提到了强缓存和协商缓存,那它们是怎么区分的呢?答案是通过不同的http头部控制。 先看下这几个头部: If - None - Match / E - tag 、 If - Modified - Since / Last - Modified 、 Cache - Control / Max - Age 、 Pragma / Expires 这些就是缓存中常用到的头部,这里不展开。仅列举下大致使用。 属于强缓存控制的: ( http1 . 1 ) Cache - Control

详解HTTP缓存

老子叫甜甜 提交于 2020-03-03 00:34:35
HTTP缓存是个大公司面试几乎必考的问题,写篇随笔说一下HTTP缓存。 1. HTTP报文首部中有关缓存的字段 在HTTP报文中,与缓存相关的信息都存在首部里,简单说一下首部。 首部 HTTP首部字段向请求报文和相应报文中添加了一些附加信息。本质上来说,它们只是一些键值对的列表。比如,下面的首部行会向Content-Length首部字段赋值19: Content-Length: 19 HTTP规范定义了几中首部字段。应用程序也可以随意发明自己所用的首部。HTTP首部可以分为以下几类: 通用首部 既可以出现在请求报文中,也可以出现在响应报文中。 请求首部 提供更多有关请求的信息。 响应首部 提供更多有关响应的信息。 实体首部 描述主体的长度和内容,或资源本身。 扩展首部 规范中没有定义的新首部。 想了解更多有关HTTP首部或报文的信息,个人推荐《HTTP权威指南》。 首部中与缓存有关的字段 通用首部字段 请求首部字段 响应首部字段 实体首部字段 2. 缓存的处理步骤 除了一些微小的细节,Web缓存的工作原理基本很简单,对一条HTTP GET报文的基本缓存处理过程包括7个步骤。 接收——缓存从网络中读取抵达的请求报文。 解析——缓存对报文解析,提取出URL和各种首部。 查询——缓存查看是否有本地副本可用,如果没有就向服务器获取一份副本,并将其保存在本地。 新鲜度检测—

浏览器缓存相关HEADER头

女生的网名这么多〃 提交于 2020-02-28 13:39:33
强缓存 强缓存是利用Expires或者Cache-Control这两个http response header实现的,它们都用来表示资源在客户端缓存的有效期。 Expires是http1.0提出的一个表示资源过期时间的header,它描述的是一个绝对时间,由服务器返回,用GMT格式的字符串表示,如:Expires:Thu, 31 Dec 2037 23:55:55 GMT,它的缓存原理是: 1)浏览器第一次跟服务器请求一个资源,服务器在返回这个资源的同时,在respone的header加上Expires的header 2)浏览器在接收到这个资源后,会把这个资源连同所有response header一起缓存下来(所以缓存命中的请求返回的header并不是来自服务器,而是来自之前缓存的header); 3)浏览器再请求这个资源时,先从缓存中寻找,找到这个资源后,拿出它的Expires跟当前的请求时间比较,如果请求时间在Expires指定的时间之前,就能命中缓存,否则就不行。 4)如果缓存没有命中,浏览器直接从服务器加载资源时,Expires Header在重新加载的时候会被更新。 Expires是较老的强缓存管理header,由于它是服务器返回的一个绝对时间,在服务器时间与客户端时间相差较大时,缓存管理容易出现问题,比如随意修改下客户端时间,就能影响缓存命中的结果。 所以在http1