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
相关推荐
李少兄2 小时前
CentOS系统下前后端项目部署攻略
linux·运维·centos
Two_brushes.4 小时前
【Linux】线程机制深度实践:创建、等待、互斥与同步
linux·运维·服务器·多线程
设计师小聂!6 小时前
Linux系统中部署Redis详解
linux·运维·数据库·redis
努力做小白7 小时前
Linux驱动11 --- buildroot&杂项驱动开发方法
linux·运维·驱动开发·单片机·嵌入式硬件
Sally璐璐8 小时前
Memcache核心技术解析与实战应用
运维·wpf·memcached
哈哈浩丶8 小时前
Linux驱动开发1:设备驱动模块加载与卸载
linux·运维·驱动开发
诗人不说梦^11 小时前
[BUUCTF 2018]Online Tool
linux·运维·服务器
晚风_END12 小时前
Linux|服务器|二进制部署nacos(不是集群,单实例)(2025了,不允许还有人不会部署nacos)
linux·运维·服务器·数据库·编辑器·个人开发
阿沁QWQ13 小时前
应用层协议和JSON的使用
运维·服务器·网络
运维开发王义杰13 小时前
不止于监控:深入剖析OpenTelemetry的可观察性生态体系
运维