您的位置首页百科知识

如何实现服务器的负载均衡

如何实现服务器的负载均衡

的有关信息介绍如下:

如何实现服务器的负载均衡

所谓负载均衡就是对多台服务器进行流量分发一种服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。

数据走向

1、客户端访问负载均衡实例IP地址时,相关请求由负载均衡实例对应的nginx集群处理;

2、集群内的每一台节点服务器均分来自前端的请求。根据算法,请求分发。

算法简介

1、轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 该算法较为常用。

upstream backend {

server 192.168.0.14;

server 192.168.0.15;

}

2、weight权重,指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

upstream backend {

server 192.168.0.14 weight=10;

server 192.168.0.15 weight=10;

}

3、ip_hash该算法会根据请求的客户端IP地址来决定当前请求应该交给谁。Nginx会确保来自同一客户端的请求都分发到同一服务器。

upstream backend {

ip_hash;

server 192.168.0.14:88;

server 192.168.0.15:80;

}

4、fair(第三方)按后端服务器的响应时间来分配请求,响应时间短的优先分配。

upstream backend {

server server1.xxx.com;

server server2.xxx.com;

fair; } url

5、url_hash(第三方) 按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。

upstream backend {

server squid1:3128;

server squid2:3128;

hash $request_uri;

hash_method crc32;

}

安装nginx

1、环境

yum -y install gccpcre-devel zlib-devel openssl-deve

2、编译nginx

tar zxvf nginx-*.tar.gz

cd nginx-*

./configure --with-http_stub_status_module

make&&makeinstal./configure

make

make install

或者直接

yum install nginx

配置nginx

1. 在http节点下,添加upstream节点。

upstreambackend{

server192.168.0.14;

server192.168.0.15;

}

2. 将server节点下的location节点中的proxy_pass配置为:http:// + upstream名称,即“http://backend”.

location / {

root html;

index index.html index.htm;

proxy_pass http://backend;

}

3. 现在负载均衡初步完成了。upstream按照轮询方式进行负载,每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。虽然这种方式简便、成本低廉。但缺点是:可靠性低和负载分配不均衡。适用于图片服务器集群和纯静态页面服务器集群。