这个方案中选择Squid作为前端的静态页面、图片的缓存服务,Squid以高效性和稳定而被各大网站应用,经过艾克研发团队多年精心打造,squid在性能、存储、分布式等方向都得到了全面的提升,已经成为云Cache加速的不二选择。
WWW技术是当今Internet上发展最快,使用最广泛的技术; WWW应用也早已取代E-mail成为Internet上数据流量最大的应用。Internet 的飞速发展,对网络的带宽建设提出更高要求。如何在现有带宽的条件下,更有效的使用WWW资源,是Internet世界关注的焦点之一。在此种迫切需求下,Web Cache技术应运而生。
Web Cache的作用和个人电脑上网页浏览器所带的缓存一样,主要是对网络信息进行缓存。当用户第一次向一个网页发出访问请求,网页从远端服务器传送给用户时,该网页内容被存在缓存服务器中。第二个用户在对同一个网页发出访问请求时,就可以直接从缓存服务器中得到网页,而不必连接到远端服务器。这样对那些访问频繁的网页,访问速度会大大提高,而这一切对用户都是透明的。
Cache Hit:当用户发起请求时,Cache服务器首先会在快取缓冲区内寻找该数据。如果欲查询的数据恰好已存在于缓冲区内(这样的情况我们称之为cache hit ),就直接从内存读出数据。
Cache Miss:当用户发起请求时,Cache服务器首先会在快取缓冲区内寻找该数据。如果欲查询的数据恰好已存在于缓冲区内(这样的情况我们称之为cache Miss ),那么Cache服务器需要到远端服务器进行请求,然后重新进行缓存。
Uncachable:不允许Cache服务器对该数据进行缓存。
Cache Validation:保证Cache服务器不提供给用户过期信息的一种机制。
Squid的发展历史相当悠久,功能也相当完善。Squid是全功能的HTTP/1.0代理服务器,也近乎完整的兼容HTTP/1.1,经常作为网页服务器的前端cache服务器,缓存相关请求来提高Web服务器的速度。
(1) client端向Server发出请求。
(2) Server收到请求后比较判断Cache中时候存在client想要的资料,如果没有则向后端/远程web Server发送数据请求。
(3) 将请求回来的资料先存放到Cache中,再将资料复制一份传送给client端。
(4) 当client发出的请求中所需要的资料在Cache中有,则将Cache中的资料直接传送给client端。
第一访问者向Proxy Server请求的数据Cache中没有时,Proxy Server抓取数据后会先保存在Cache中,这样访问速度变慢了,可是第二个访问者以及后来的访问者需要该资料的时候,Proxy Server不会向远程服务器请求,直接将cache中的资料发送给后来的请求者就行了,这样就减少了连接远程服务器的流量,另外由于Proxy Server是在离访问客户端近的,所以传输速度也更快。


