负载均衡中的缓存技术


发布时间:2012-08-24

在负载均衡中缓存分为两种,一种是内存缓存(RAM Caching),另外一种是TCP缓存机制。

内容缓存技术就是将网站服务器中的一些经常被用户访问的内容缓存在负载均衡设备的内存中。当用户再次访问这些内容的时候,负载均衡设备就会截获用户的请求,从缓存中读取用户所需要的内容并将这些内容直接返回给用户浏览。由于是直接从内存中读取,这种技术能够大大提高网络用户的访问速度,并大大减轻后端服务器的负载情况与计算量。

TCP缓冲是为了解决后台服务器网速与客户的网络速度不匹配而造成的服务器资源浪费等问题。由于服务器与负载均衡设备之间的网络带宽速率很高,时延很小,通过将服务器端的请求缓冲在负载均衡设备的缓冲区中,防止由于客户端缓慢的网络速度和较高的网络延时造成服务器端连接阻塞问题。

内容缓存的工作原理非常简单,我们将通过下图用户访问logo.gif的实例来解释内容缓存的工作过程:

1)当有客户端发起对logo.gif的第一次请求时,负载均衡首先会检查本地缓存中是否存在该对象。如果不存在这个对象,负载均衡会将这个HTTP请求转发给后端的服务器;

2)服务器收到对logo.gif的HTTP请求后,将对象回应给负载均衡设备;

3)负载均衡设备将logo.gif对象缓存在内容缓存中,并将其发送给客户端;

4)后续的其它客户端发起对logo.gif的访问请求时,因为负载均衡检测到内容缓存中已经存在有该对象,并确认该对象并未失效的话,负载均衡直接将该对象返回给客户端,而无需服务器再次发送该对象。减少了服务器的压力,同时也加快了客户端的访问速度。

TCP缓冲技术是L7应用负载均衡的核心,它将服务器与客户端之间的TCP连接分成两个独立的TCP连接,并分别进行处理,以适应两边不同的网络环境。此外,通过TCP缓冲技术,将客户端的HTTP请求完整的接收下来并进行分析,还可以提供一些高级负载均衡的应用功能,如:URL-Hashing,URL交换(URL-Switching),基于Cookie或会话的连接保持(Cookie/Session Persistence)等等。