标签: cache-control

关联缓存模拟 - 处理故障方案

在模拟完全关联缓存(在MIPS程序集中)时,基于在线阅读的一些信息,我想到了一些问题.

根据马里兰大学的一些笔记

查找插槽:最多一个插槽应匹配.如果有多个匹配的插槽,则您有一个错误的全关联缓存方案.在完全关联的缓存的任何槽中,您永远不应该有多个缓存行副本.维护多份副本很难,而且没有意义.这些插槽可用于其他缓存行.

这是否意味着我应该一直检查整个标签列表以检查第二次匹配?毕竟,如果我不这样做,我永远不会"意识到"缓存的错误,但是,每次检查似乎都是非常低效的.

在我检查的情况下,不知何故我设法找到第二个匹配,意味着错误的缓存方案,那我该怎么办?虽然最好的答案是修复我的实现,但我感兴趣的是如果出现这种情况,如何在执行期间处理它.

language-agnostic mips cache-control

5
推荐指数
1
解决办法
210
查看次数

httpcontext中的asp.net缓存

我想缓存从数据库中提取的对象,这些对象通常不会被修改,因为每次页面加载时都会选择近2000个项目,从而在页面加载期间导致明显的性能问题.

这里查看 了一些MSDN文章(最相关的是这里)之后,似乎这些是防止单个用户多次往返数据库的解决方案,并且这个缓存将在httprequest关闭后到期.

任何人都可以清除混淆,如果找到可以提供适用的参考吗?

asp.net cache-control httpcontext

5
推荐指数
1
解决办法
736
查看次数

如何在png文件中添加"Cache-Control:public"标头?

我最近一直在关注Safari性能审核/建议.一节涉及Cache-Control: public向某些png资源添加标头.

我听说过其他地方的说法,并想知道如何做到这一点.

事实上,从技术上讲,我甚至不确定要实现这一目标需要做些什么.这个文本是以某种方式插入到图像文件中的吗?

png cache-control web-optimization

5
推荐指数
1
解决办法
5144
查看次数

如何在Rackspace云存储上使用carrierwave控制缓存?

用户可以在我的网站上传头像.这可以经常改变安静.我需要一个不会改变的严格网址,因为网址可以在网站的某些缓存部分显示.我试图在我的Rails应用程序上设置以下雾属性来禁用缓存,但我没有得到任何结果...

config.fog_attributes = {'Cache-Control' => 'max-age=1', 'Expires' => 1.day.ago.httpdate}
Run Code Online (Sandbox Code Playgroud)

现在,当用户上传新的头像时,可能需要几个小时才能从缓存中消失.

以下是Rackspace云存储上的用户头像网址示例:

https://c28078.ssl.cf3.rackcdn.com/user/1/small_profile_image.jpg

如何确保更新的头像会立即显示而不会出现任何缓存问题?

ruby-on-rails cache-control rackspace-cloud carrierwave

5
推荐指数
1
解决办法
954
查看次数

"no-cache"vs"max-age = 0,must-revalidate,proxy-revalidate"

HTTP响应与Cache-Control: no-cachevs有Cache-Control: max-age=0, must-revalidate, proxy-revalidate什么区别?

浏览器会将其视为相同吗?

caching http cache-control browser-cache rfc2616

5
推荐指数
1
解决办法
8448
查看次数

如何撤消Response.Cache.SetNoStore()?

我有一个CMS应用程序代码,该代码调用Response.Cache.SetNoStore()所有请求,如果我是对的,这将防止代理/ cdn缓存那些页面/内容。因此,我有条件地调用以下代码:

Response.Cache.SetCacheability(HttpCacheability.Public);
Response.Cache.SetMaxAge(new TimeSpan(0, 30, 0));
Response.Cache.SetValidUntilExpires(true);
Run Code Online (Sandbox Code Playgroud)

但这不会从响应标头中删除无存储参数,这是返回的http标头:

Cache-Control:public, no-store, must-revalidate, max-age=1800
Run Code Online (Sandbox Code Playgroud)

因此,我的问题是,我该如何实用地删除nostore参数?如果这不可能,那么我如何/在哪里解析/修改http-header,因为我尝试在PagePreRender事件上进行解析并且没有应用nostore参数...这使人怀疑这是哪个生命周期附加到标题?

c# asp.net iis caching cache-control

5
推荐指数
1
解决办法
1330
查看次数

nginx缓存但使用`Cache-Control:public,s-maxage = 0`立即过期/重新验证

我想使用HTTP代理(例如nginx)来缓存大量/昂贵的请求.这些资源对于任何授权用户都是相同的,但是每个请求的后端都需要检查其身份验证/授权.

这听起来像是Cache-Control: public, max-age=0与nginx指令proxy_cache_revalidate on;一起执行此操作的方式.代理可以缓存请求,但是每个后续请求都需要对后端执行条件GET,以确保在返回缓存资源之前对其进行授权.如果用户未经授权,则后端发送403,如果用户被授权则发送304,并且缓存的资源不是陈旧的,或者如果新资源已过期,则发送200.

在nginx max-age=0中设置了if ,根本不缓存请求.如果max-age=1设置,那么如果我在初始请求之后等待1秒,那么nginx会执行条件GET请求,但是在1秒之前它直接从缓存服务它,这对于需要进行身份验证的资源来说显然非常糟糕.

有没有办法让nginx缓存请求但是立即需要重新验证?

请注意,这在Apache 可以正常工作.以下是nginx和Apache的示例,前两个有max-age = 5,最后两个有max-age = 0:

# Apache with `Cache-Control: public, max-age=5`

$ while true; do curl -v http://localhost:4001/ >/dev/null 2>&1 | grep X-Cache; sleep 1; done
< X-Cache: MISS from 172.x.x.x
< X-Cache: HIT from 172.x.x.x
< X-Cache: HIT from 172.x.x.x
< X-Cache: HIT from 172.x.x.x
< X-Cache: HIT from 172.x.x.x
< X-Cache: REVALIDATE from 172.x.x.x
< X-Cache: HIT from …
Run Code Online (Sandbox Code Playgroud)

reverse-proxy nginx cache-control http-caching http-headers

5
推荐指数
1
解决办法
1862
查看次数

缓存控制标头不起作用

我在响应头中设置了Cache控件Cache-Control:public, max-age=86400.但是当我尝试刷新页面或打开一个新选项卡时,它总是会打到我的服务器.我得到的响应状态是200,此请求出现了服务器日志,我也检查了chrome://cache/此请求不在列表中.我已经看过一些类似的SO问题缓存控制没有etag工作,为什么缓存控制:max-age不起作用?.但仍然没有运气.测试铬56.

cache-control

5
推荐指数
2
解决办法
4287
查看次数

ReactJS:IE11没有使用缓存数据发出新的HTTP请求

我在我的React应用程序IE11中遇到的问题是UI没有为每个新请求命中后端服务并从缓存数据返回响应.该应用程序在Chrome上正常运行.

在IE的情况下,服务以代码结束:304而不是200. PFB请求标头:

Accept  application/json,*/*
Request GET /services/v0/search/?uid=12900 HTTP/1.1
Content-Type    application/json
Cache-Control   no-cache
Run Code Online (Sandbox Code Playgroud)

PFB获取的响应头IE:

Response    HTTP/1.1 304 Not Modified
x-frame-options DENY
x-xss-protection    1; mode=block
x-content-type-options  nosniff
Run Code Online (Sandbox Code Playgroud)

任何线索,IE渲染这种行为背后的原因是什么?TIA

internet-explorer http cache-control internet-explorer-11 reactjs

5
推荐指数
1
解决办法
9670
查看次数

加载数日HTML的用户比例很小?

我们有一个包含+50.000活跃用户的页面.有时,当我们更新后端和前端时,我们会看到一小部分似乎加载旧HTML的人会出现JavaScript错误.(它找不到对象X,因为我们从后端的JSON中删除了它).

我们至少在Android和IOS设备上都见过这个,但也可能在桌面浏览器上.

这可能是代码更改后的几天.

我觉得这有关于书签或真正的旧标签的事情.

  • 这是一个众所周知的常见问题吗?
  • 这个旧HTML加载的原因是什么?
  • 有什么可以做的吗?

我不认为我们的用户正在经历一些非常消极的事情(也许这是一个预加载而他们甚至看不到它),但是它会产生很多噪音,隐藏着我们可能遇到的真正问题.

其中一个页面的示例:https://poules.com/en/pools/aaygun96-wk-poule/world-cup-2018/ranking

html cache-control browser-cache offline-caching

5
推荐指数
1
解决办法
172
查看次数