ngnix负载均衡

Nginx 可以作为一个非常优秀的 HTTP 和反向代理服务器,用于实现负载均衡。以下是一个简单的 Nginx 负载均衡配置示例:

java 复制代码
nginx
http {
    upstream myapp1 {
        server srv1.example.com;
        server srv2.example.com;
        server srv3.example.com;
    }

    server {
        listen 80;

        location / {
            proxy_pass http://myapp1;
        }
    }
}

在这个配置中,upstream 指令定义了一个服务器组 myapp1,包含三个后端服务器。在 server 块中,所有到该 Nginx 实例 80 端口的 HTTP 请求都会通过 location / 被代理传递给 myapp1 组的服务器,并且会根据配置的负载均衡策略(默认是轮询)分配到不同的后端服务器。

Nginx 支持多种负载均衡方法,例如:

轮询(默认)

权重(可以指定每个后端服务器处理的请求比例)

java 复制代码
ip_hash
least_conn(最少连接)
hash

例如,使用权重的配置:

java 复制代码
nginx
upstream myapp1 {
    server srv1.example.com weight=3;
    server srv2.example.com;
    server srv3.example.com;
}

在这个配置中,srv1.example.com 被赋予了额外的权重,这意味着它将处理大约 3/4 的请求,其他的服务器处理 1/4。

确保在配置文件修改后,重启或重新加载 Nginx 以使配置生效:

java 复制代码
sudo nginx -s reload
相关推荐
小猪佩奇TONY9 分钟前
Linux 内核学习(18) --- linux dma_buf 机制
linux·运维·学习
zhengqweasd18 分钟前
网站卡死、接口超时的隐性根源
运维·服务器·网络
handler0140 分钟前
【Linux】进程退出、等待与程序替换
linux·运维·exec·进程·进程等待·进程退出·程序替换
Linux-lucky1 小时前
33-Linux学习之旅之MySQL用户管理
java·linux·运维·学习·mysql·ubuntu
像风一样的男人@1 小时前
linux --安装openGL,EGL/OSMesa
linux·运维·服务器
ZzzZZzzzZZZzzzz…1 小时前
K8s---组件
运维·云原生·容器·kubernetes·k8s·k8s组件
Maynor9961 小时前
「原子弹爆炸」级别:Astra 复刻游戏合集(含实机截图)
java·linux·运维·数据库·gpt·游戏
陈皮糖..1 小时前
基于 Kubernetes 与 GitLab CI/CD 的云原生自动化交付平台
运维·ci/cd·云原生·架构·kubernetes·自动化·gitlab
脚踏实地,坚持不懈!1 小时前
Android 系统工程师(性能/功耗/稳定性)岗位问题深度解析:从内核源码到实战排查(完善版)
android·linux·运维·服务器
0+1111 小时前
Linux --进程信号
linux·运维·服务器