未分类

应用服务器集群的伸缩性设计

服务器集群的实现方法关键在于一种叫做负载均衡的技术,下面列出几种常用的负载均衡技术:

HTTP重定向负载均衡

用户首先向某个ip地址发送HTTP请求,但这个请求首先经过负载均衡服务器,负载均衡服务器根据用户的请求计算一台真实的Web服务器地址,并将这台Web服务器的地址写入返回的重定向响应中,但是这种方法需要用户提交两次HTTP请求,有点繁琐。

DNS域名解析负载均衡

用户向DNS服务器请求解析域名,DNS服务器更具用户提供的网址计算出一台真实的Web服务器的ip地址并返回,但是在实际应用中,DNS服务器目前是多层解析,某台Web服务器下线后即使修改DNS服务器的缓存,使其生效也需要花很长时间,所以就有可能解析一台失效的服务器,实际应用中,大型网站总是部分使用DNS服务器,即首先域名解析,但是并不是解析真实的Web服务器,而是解析到负载均衡服务的内部服务器,内部的负载均衡服务器再进行负载均衡,将请求发送到真实的Web服务器上。

反向代理负载均衡

大多数反向代理服务器也提供负载均衡的服务,即Web服务器不对外提供访问,不需要公网ip而是方向代理服务器需要公网内网两套ip,反向代理服务器也叫应用层负载均衡服务器,这种方法优点是部署简单,缺点是负载均衡服务器容易成为性能的瓶颈。

IP负载均衡

用户请求的数据包到达负载均衡服务器,负载均衡服务器解析数据包,然后将数据目的地的ip改为真实的web服务器的ip地址,真实服务器处理完请求后再将相应数据返回给负载均衡服务器,负载均衡服务器再将数据包源地址改为自身的ip地址发送给用户浏览器。但由于所有的请求都要经过负载均衡服务器,所以负载均衡服务器的带宽容易成为限制。

数据链路层负载均衡

再通信协议的链路层修改mac地址进行负载均衡,只修改目的mac地址,通过配置真实物理服务器集群的所有机器的虚拟ip和负载均衡服务器ip地址一致,从而达到不修改数据包的源地址和目的地址就可以进行数据分发,实际操作中,由于IP地址是一致的,不需要通过负载均衡进行地址转换,可将响应包直接返回给用户浏览器,避免了网络限制。这种负载均衡方式又叫做直接路由方式。

Leave a Reply

邮箱地址不会被公开。 必填项已用*标注