反向代理缓存的详细介绍

传统代理: 用户隐藏在代理服务器之后。代理服务器工作在应用层,它只转发它支持的协议的数据。
反向代理(Reverse Proxy): 这种机制是Web服务器隐藏在代理服务器之后,实现这种机制的服务器称作反向代理服务器(Reverse Proxy Server)。此时,Web服务器成为后端服务器,反向代理服务器称为前端服务器。
引入反向代理服务器的目的之一就是基于缓存的加速。我们可以将内容缓存在反向代理服务器上,所有缓存机制的实现仍然采用HTTP/1.1协议。
反向代理服务器不使用缓存:
可将Nginx做为Apache的反向代理服务器,反向代理服务器不使用缓存时,吞吐率会下降,因为原本直达Web的请求,现在绕路转达,处理时间必然会增加。
可将Web服务器和应用服务器分离,前者处理一些静态内容,并作为反向代理,后者处理动态内容。
反向代理服务器(RPS)使用缓存:
Varnish作为RPS,能够提供较好的缓存功能。如果缓存内容发挥作用,在Http响应头中服务器显示的是后端服务器,但Via标记会指示数据的来源。
RPS可通过修改流经它的Http头信息来决定哪些内容可以缓存,哪些内容不可以缓存。浏览器和Web服务器通过Http将自己的需求告诉RPS,RPS进行协调缓存。
Varnish通过配置文件来修改缓存规则,使用VCL语言。它也提供强制清除缓存的功能。Varnish提供一个监控程序Varnishstat用来监控缓存命中率。
缓存命中率和后端吞吐率的理想技术模型:
实际吞吐率: 指反向代理服务器处理用户请求时的实际吞吐率。
后端吞吐率: 指后端Web服务器处理来自反向代理服务器的请求时的吞吐率。
活跃内容数: 在平均缓存有效周期内,反向代理服务器想后端服务器请求内容的次数。
缓存丢失率=(活跃内容数/(实际吞吐率×平均缓存有效期))×100%
缓存命中率= 1-缓存丢失率
后端吞吐率= 活跃内容数/平均缓存有效期
缓存命中率= (1-(后端吞吐率/实际吞吐率))×100%
后端吞吐率 = (1 – 缓存命中率)×实际吞吐率
结论:
1. 活跃内容数和平均缓存有效期一定的情况下,缓存命中率与实际吞吐率成正比。
2. 实际吞吐率和平均缓存有效期一定的情况下,缓存命中率与活跃内容数成反比。
3. 活跃内容数和实际吞吐率一定的情况下,缓存命中率与平均缓存有效期成正比。
4. 活跃内容数一定的情况下,后端吞吐率与平均缓存有效期成反比。
5. 平均缓存有效期一定的情况下,后端吞吐率与活跃内容数成正比。
6. 缓存命中率的变化不一定会影响后端吞吐率。
7. 后端吞吐率的变化不一定会影响缓存命中率。
由此可见,缓存命中率越高,后端服务器工作量越少是错误的认识。
ESI(Edge Side Includes)
ESI类似于SSI,可以在页面中嵌入子页面,不同于SSI的是SSI在Web服务器端组装内容,ESI在Http代理服务器上组装内容,包括反向代理。
Varnish支持ESI,这样Varnish就支持网页局部缓存,实现局部更新动态内容。AJAX也有类似的功能(它对局部内容支持异步请求)。
穿过代理:
反向代理服务器作为用户和后端Web服务器的中介,它只将用户的Http请求转发给后端服务器,但用户的某些信息有时并不在Http请求中,如用户的IP地址和发送请求的TCP端口,这对于后端的Web服务器是不可见的,这就有必要想办法让这些信息
“穿过”反向代理服务器。
办法: 让反向代理请求后端服务器时携带附加的Http头信息(通过配置反向代理服务器来实现)。同样,如果后端服务器想要告知浏览器一些额外的信息,也可以在Http响应头中携带自定义的信息“穿过”反向代理。
Nginx和Lighttpd优势主要体现在网络IO模型上。
Nginx利用epoll模型可以在较大并发用户数的情况下依然提供较高的吞吐率。
Ajax的问题,局部内容应该和父页面所在的主机保持相同的顶级域名。
影响缓存命中率的因素: 缓存过期时间,缓存空间不够大被换出,缓存的粒度,架构设计。
影响Web服务器处理能力的因素?(服务器并发处理能力这一章)
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# 反向代理缓存
# 反向代理缓存的详解
# 反向代理缓存使用方法
# Nginx 反向代理并缓存及缓存清除的方法
# 详解Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解
# Nginx服务器作反向代理时的缓存配置要点解析
# C#实现可缓存网页到本地的反向代理工具实例
# linux下通过Squid反向代理搭建CDN缓存服务器的配置方法
# 使用Nginx反向代理与proxy_cache缓存搭建CDN服务器的配置方法
# ASP.NET 性能优化之反向代理缓存使用介绍
# 代理服务器
# 后端
# 情况下
# 的是
# 成正比
# 可将
# 它只
# 自己的
# 代理服务
# 器上
# 也有
# 如有
# 不可以
# 较高
# 我们可以
# 这就
# 希望能
# 较好
# 自定义
# 有必要
相关文章:
浅析上传头像示例及其注意事项
常州企业建站如何选择最佳模板?
,石家庄四十八中学官网?
枣阳网站制作,阳新火车站打的到仙岛湖多少钱?
我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
建站之星代理如何优化在线客服效率?
视频网站app制作软件,有什么好的视频聊天网站或者软件?
Swift中swift中的switch 语句
黑客如何利用漏洞与弱口令入侵网站服务器?
大同网页,大同瑞慈医院官网?
如何在IIS中新建站点并解决端口绑定冲突?
已有域名和空间,如何快速搭建网站?
Swift开发中switch语句值绑定模式
如何选择域名并搭建高效网站?
用v-html解决Vue.js渲染中html标签不被解析的问题
如何高效搭建专业期货交易平台网站?
如何选择PHP开源工具快速搭建网站?
如何在Windows虚拟主机上快速搭建网站?
建站主机无法访问?如何排查域名与服务器问题
如何选择最佳自助建站系统?快速指南解析优劣
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
C#如何使用XPathNavigator高效查询XML
如何在建站之星网店版论坛获取技术支持?
北京企业网站设计制作公司,北京铁路集团官方网站?
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
微信h5制作网站有哪些,免费微信H5页面制作工具?
网站制作免费,什么网站能看正片电影?
微信小程序 五星评分(包括半颗星评分)实例代码
音乐网站服务器如何优化API响应速度?
网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?
如何在阿里云部署织梦网站?
建站之星备案流程有哪些注意事项?
如何在万网开始建站?分步指南解析
公众号网站制作网页,微信公众号怎么制作?
建站之星如何开启自定义404页面避免用户流失?
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
html制作网站的步骤有哪些,iapp如何添加网页?
高端云建站费用究竟需要多少预算?
如何将凡科建站内容保存为本地文件?
天津个人网站制作公司,天津网约车驾驶员从业资格证官网?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
公司网站的制作公司,企业网站制作基本流程有哪些?
历史网站制作软件,华为如何找回被删除的网站?
建站之星安装模板失败:服务器环境不兼容?
免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?
济南企业网站制作公司,济南社保单位网上缴费步骤?
宝华建站服务条款解析:五站合一功能与SEO优化设置指南
建站之星手机一键生成:多端自适应+小程序开发快速建站指南
*请认真填写需求信息,我们会在24小时内与您取得联系。