#官方解释:
upstream backend {
server backend1.example.com weight=5;
server backend2.example.com:8080;
server unix:/tmp/backend3;
server backup1.example.com:8080 backup;
server backup2.example.com:8080 backup;
}
server {
location / {
proxy_pass http://backend;
}
}
upstream:模块 不允许修改
backend:名称 可修改
server backend1.example.com: 写监听的域名或者ip
weight:权重,权重越大,分发到的任务越多,本文不做说明,其实这个是不需要写的,upstream 模块默认就是轮询法,每个ip分发一次。当然如果你的某个服务器配置高、负载低的机器则配置更高的权重,让其处理更多的请;而配置低、负载高的机器,给其分配较低的权重,降低其系统负载,加权轮询能很好地处理这一问题
server unix:/tmp/backend3:可以使用socket
server backup1.example.com:8080 backup:热备,nginx自带的高可用,当上面监听的
两个服务器都挂掉了,就由热备的提供服务。
proxy_pass http://backend: 使用负载均衡
#++++++++++++++++官方解释完++++++++++++++++++++++
(在同一服务器,不同端口测试,)通过宝塔面板,编辑主服务器 http://111.231.223.47:39883 ngix配置项,在server前面加上 upstream 属性。保存后,重启ngix。即可看到效果(可访问楼主测试ip,查看效果,)
upstream backend{
server 111.231.223.47:39880;#服务器1
server 111.231.223.47:39881;#服务器2
server 111.231.223.47:39882 backup;#热备。服务器3,当前面两个服务器停止时,才会启动备用服务器,这里由于是同一台服服务器,没有效果
}
server
{
location / {
proxy_pass http://backend;
}
}
image.png