首页 存档 技术 查看内容

总结Web应用中常用的各种Cache

2018-3-30 13:00 |来自: 互联网 306 0

摘要: (点击上方公众号,可快速关注) 来源:Ruby China 网址:https://ruby-china.org/topics/19389 cache是提高应用性能重要的一个环节,写篇文章总结一下用过的各种对于动态内容的cache。 文章以Nginx,Rails,Mysql ...

(点击上方公众号,可快速关注)


来源:Ruby China

网址:https://ruby-china.org/topics/19389


cache是提高应用性能重要的一个环节,写篇文章总结一下用过的各种对于动态内容的cache。


文章以Nginx,Rails,Mysql,Redis作为例子,换成其他web服务器,语言,数据库,缓存服务都是类似的。


以下是3层的示意图,方便后续引用:



1.客户端缓存


一个客户端经常会访问同一个资源,比如用浏览器访问网站首页或查看同一篇文章,或用app访问同一个api,如果该资源和他之前访问过的没有任何改变,就可以利用http规范中的304 Not Modified 响应头(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.5 ),直接用客户端的缓存,而无需在服务器端再生成一次内容。


在Rails里面内置了fresh_when这个方法,一行代码就可以完成:

class ArticlesController
  def show
    @article = Article.find(params[:id])
    fresh_when :last_modified =
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部