一、集群
就是同一个业务部署在不同的服务器上。
1、启动多个Web服务器
http://127.0.0.1:9001
http://127.0.0.1:9002
http://127.0.0.1:9003
http://127.0.0.1:9004
2、更改nginx.conf配置
进入nginx/conf目录,找到nginx.conf文件进行配置。
⑴ 在http{}节点中间添加upstream配置
Upstream PHPCluster{
Server 127.0.0.1:9001
Server 127.0.0.1:9002
Server 127.0.0.1:9003
Server 127.0.0.1:9004
}
⑵ 在location{}中,添加proxy_pass配置反向代理
Location / {
Proxy_pass http://PHPCluster
}
启动nginx即可实现4个web服务器的集群。
二、负载均衡
就是将服务器收到的请求安装指定规则进行转发的过程。常见的策略如下:
⑴ 轮询
这是nginx的默认策略,每个请求按顺序逐一分配到不同的服务器,如果服务器down了那么自动删除并跳过。
⑵ 指定轮询几率
Upstream PHPCluster{
Server 127.0.0.1:9001 weight=1;
Server 127.0.0.1:9002 weight=1;
Server 127.0.0.1:9003 weight=7;性能好的服务器,数字越大,收到的请求概率大
Server 127.0.0.1:9004 weight=1;
}
如果不指定weight值,那么各个服务器的weight值相同。
⑶ IP_Hash
每个请求按照IP地址的hash值来分配接收的服务器,来自同一IP的请求会被分发到同一个服务器去处理,可以与指定轮询几率的策略一起使用。
Upstream PHPCluster{
IP_hash;
Server 127.0.0.1:9001;
Server 127.0.0.1:9002;
Server 127.0.0.1:9003;
Server 127.0.0.1:9004;
}