Tag: caching

什么是caching控制:私人?

当我访问chesseng.herokuapp.com时,我得到一个响应头,看起来像 Cache-Control:private Connection:keep-alive Content-Encoding:gzip Content-Type:text/css Date:Tue, 16 Oct 2012 06:37:53 GMT Last-Modified:Tue, 16 Oct 2012 03:13:38 GMT Status:200 OK transfer-encoding:chunked Vary:Accept-Encoding X-Rack-Cache:miss 然后我刷新页面并获取 Cache-Control:private Connection:keep-alive Date:Tue, 16 Oct 2012 06:20:49 GMT Status:304 Not Modified X-Rack-Cache:miss 所以看起来像caching工作。 如果这适用于caching,那么Expires和Cache-Control的重点是什么? 为了增加混淆,当我在https://developers.google.com/speed/pagespeed/insights/上testing页面时,它告诉我“利用浏览器caching”。

caching失效 – 是否有一个通用解决scheme?

“计算机科学只有两个难题:caching失效和命名事情。” 菲尔·卡尔顿 是否有一个通用的解决scheme或方法来使caching无效; 要知道什么时候一个条目陈旧,所以你保证总是得到新的数据? 例如,考虑从文件获取数据的函数getData() 。 它基于文件的最后一次修改时间对其进行caching,每次调用它时都会进行检查。 然后添加第二个函数transformData()来转换数据,并在下次调用函数时caching结果。 它没有文件的知识 – 你如何添加依赖,如果文件被改变,这个caching变得无效? 每次调用transformData()都可以调用getData() ,并将其与用于构buildcaching的值进行比较,但这可能会导致代价非常高昂。

在C ++中,我应该费心去cachingvariables,还是让编译器进行优化? (混叠)

考虑下面的代码( p是unsigned char*的types,而bitmap->width是一些整数types,它是未知的,取决于我们使用的外部库的版本): for (unsigned x = 0; x < static_cast<unsigned>(bitmap->width); ++x) { *p++ = 0xAA; *p++ = 0xBB; *p++ = 0xCC; } 它是值得优化它[..] 有没有这样的情况下,可以写出更有效的结果: unsigned width(static_cast<unsigned>(bitmap->width)); for (unsigned x = 0; x < width; ++x) { *p++ = 0xAA; *p++ = 0xBB; *p++ = 0xCC; } …或者这是编译器优化这个微不足道的? 你认为什么是“更好”的代码? 编者注(艾克):对于那些想知道三文治文本的人来说,原来的这个问题,如同所说的那样,离危险的地方很近,尽pipe得到了正面的反馈,但却非常接近封闭。 这些已经被打破了。 但是,请不要惩罚处理这些问题的答复者。

清除JavaScript中的caching

如何清除JavaScript的浏览器caching? 我们部署了最新的JavaScript代码,但是我们无法获得最新的JavaScript代码。

Expires和Cache-Control头文件有什么区别?

Expires和Cache-Control头文件有什么区别?

如何closuresFirefox的caching?

在开发过程中,我必须始终在Firefox中“清除caching”,以便使用最新版本的JavaScript文件。 是否有某种设置(关于:configuration)完全closuresJavaScript文件的caching? 或者,如果不是,所有文件?

Linux中的缓冲区和高速caching之间有什么区别?

对我来说,并不清楚两个Linux内存概念之间的区别: buffer和cache 。 我已经阅读了这篇文章 ,在我看来,他们之间的差异是到期政策: 缓冲区的政策是先入先出 caching的策略是最近最less使用的。 我对吗? 特别是,我正在看两个命令: free和vmstat james@utopia:~$ vmstat -SM procs ———–memory———- —swap– —–io—- -system– —-cpu—- rb swpd free buff cache si so bi bo in cs us sy id wa 5 0 0 173 67 912 0 0 19 59 75 1087 24 4 71 1 james@utopia:~$ free -m total used […]

如果第一个响应与AppCache(Symfony2)是私密的,那么它是否正确?

我试图使用httpcaching。 在我的控制器中,我设置了一个响应,如下所示: $response->setPublic(); $response->setMaxAge(120); $response->setSharedMaxAge(120); $response->setLastModified($lastModifiedAt); 开发模式 在开发环境中,第一个响应是200以下标题: cache-control:max-age=120, public, s-maxage=120 last-modified:Wed, 29 Feb 2012 19:00:00 GMT 接下来的2分钟,每个响应是一个304以下标题: cache-control:max-age=120, public, s-maxage=120 这基本上是我所期望的。 产品模式 在产品模式下,响应标头是不同的。 请注意,在app.php中我将内核包装在AppCache中。 第一个响应是200以下标题: cache-control:must-revalidate, no-cache, private last-modified:Thu, 01 Mar 2012 11:17:35 GMT 所以这是一个私人的无caching响应。 接下来的每一个请求都是我所期望的。 304以下标题: cache-control:max-age=120, public, s-maxage=120 我应该担心吗? 这是一个预期的行为? 如果我把Varnish或Akamai服务器放在它的前面会发生什么? 我做了一些debugging,我发现这个响应是私有的,因为最后修改的头文件。 HttpCache内核使用EsiResponseCacheStrategy来更新caching的响应( HttpCache :: handle()方法)。 if (HttpKernelInterface::MASTER_REQUEST === $type) { $this->esiCacheStrategy->update($response); […]

如何防止在Rails中浏览器页面caching

Ubuntu – > Apache – > Phusion Passenger – > Rails 2.3 我的网站的主要部分反应到您的点击。 所以,如果你点击一个链接,它会把你发送到目的地,并立即重新生成你的页面。 但是,如果您点击后退button,则看不到新的页面。 不幸的是,没有手动刷新, 它似乎浏览器正在caching它。 我想确保浏览器不会caching页面。 另外,我确实希望为我所有的静态资产设置远期到期date。 什么是解决这个问题的最好方法? 我应该在Rails中解决这个问题吗? Apache的? JavaScript的? 谢谢你的帮助,Jason 唉。 这些build议都没有强迫我正在寻找的行为。 也许有一个JavaScript的答案? 我可以让rails在评论中写出一个时间戳,然后通过javascript检查来查看时间是否在五秒之内(或者其他什么)。 如果是,那么罚款,但如果没有,然后重新加载页面? 你认为这会起作用吗? 感谢你的帮助, 贾森

Java基于时间的地图/caching与过期的关键

是否有人知道Java Map或类似的标准数据存储,在给定的超时后自动清除条目? 这意味着老化,旧的过期条目自动老化。 最好在通过Maven访问的开源库中? 我知道自己实现这些function的方法,并且在过去已经做了好几次,所以我并不是要求这方面的build议,而是指向一个很好的参考实现。 像WeakHashMap这样的基于WeakReference的解决scheme不是一种select,因为我的密钥可能是非干扰string,我想要一个不依赖于垃圾收集器的可configuration超时。 Ehcache也是我不想依赖的选项,因为它需要外部configuration文件。 我正在寻找一个只有代码的解决scheme。