引入Web Cache技术的主要目的:通过对内容副本进行缓存来满足后续相同的用户请求。使用 Cache 可以分担用户对源站点的集中访问负载,从而提高Web 站点请求的响应速度和用户访问并发量。
1. Web Cache 关键性能指标
- 并发量
在设计Web Cache的初期就应该规划好其能够处理的用户访问并发量,从而在部署完成后能够让其达到预期的并发量。
当访问峰值超过Web Cache 和 Web Server的系统容量值时,可以采用虚拟排队等方式限制用户的访问数量。 - 吞吐率
指单位时间内能够处理、转发的数据量大小,吞吐率是衡量缓存设备处理速度的中哟性能指标。 - 命中率
- 响应时间和丢包率
响应时间主要包括: DNS解析时间、建立连接时间、重定向时间、收到第一个包时间、图片下载时间、页面总下载时间
2. 内容存储机制
常用的存储技术方案:共享存储、本地附加存储(DAS)、分布式文件系统服务。
- 共享存储设备性能好、稳定和可靠性高,单投入资本较高;
- 分布式文件系统基于链家存储介质提供大容量、高性能、高可靠的存储服务,但对部署实时技术要求较高,且容易引入额外的网络延迟,因此更适合流媒体。
- Web Cache 缓存对象的平均大小是10-12KB,最适合的就是DAS,通过在 Web Cache 服务器中内置大容量、高速的硬盘,在服务器内做RAID配置满足应用的需求。
3. 内容更新机制
问题:担心给用户的是过期或者失效的内容;代理通过缓存“隐藏”掉用户。
Web Cache 的内容更新机制主要设计两方面的内容:①那些内容需要缓存②缓存的内容如何让更新。
3.1 HTTP协议中的缓存技术
1)使用缓存的优点:
- 减少响应时间
- 减少网络带宽消耗
- 降低源服务器负载
2)缓存的基本原则:
HTTP协议定义了各种各样的缓存控制协议。
- 响应消息的头信息告诉缓存不要保存副本
- 请求信息需要源服务器认证或者涉及安全协议,相应请求内容不会被缓存
- 若内容含有一下信息,认为内容足够新,不需要从源服务器重新获取
- ①含有过期时间和寿命信息,且此时内容仍没有过期