nginx配置文件路径:
apt安装的nginx配置文件路径:/etc/nginx/nginx.conf
Nginx有6中配置负载均衡的方法:
- 轮询算法(默认)
请求被平均调度给多个服务器处理
http {
...
upstream myserver {
server 192.168.1.2:8080;
server 192.168.1.3:8080;
...
}
server {
...
location / {
proxy_pass http://myserver;
}
}
}
- 加权轮询算法
给要轮询的服务器配置权重
http {
...
upstream myserver {
server 192.168.1.2:8080 weight=10;
server 192.168.1.3:8080 weight=90;
...
}
...
server {
...
localtion / {
proxy_pass http:myserver;
}
}
}
- ip_hash算法
将客户端ip进行hash运算,然后将请求转发到对应的服务器,每台客户端对应的服务器是固定的
http {
...
upstream myserver {
ip_hash;
server 192.168.1.2:8080;
server 192.168.1.3:8080;
...
}
...
server {
...
location / {
proxy_pass http://myserver;
}
}
}
- 最少连接数算法
此种方式nginx会将请求转发到当前连接数较少的服务器
http {
...
upstream myserver {
least_conn;
server 192.168.1.2:8080;
server 192.168.1.3:8080;
...
}
...
server {
...
location / {
proxy_pass http://myserver;
}
}
}
- url_hash算法
将客户端url进行hash运算,然后将请求转发到相应的服务器,这种方式相同url会转发到同一个服务器
需要安装url_hash补丁
http {
...
upstream myserver {
server 192.168.1.2:8080;
server 192.168.1.3:8080;
...
hash $request_uri;
hash_method crc32;
}
...
server {
...
location / {
proxy_pass http://myserver;
}
}
}
- fair算法
优先选择响应时间最短的服务器
需要安装模块:nginx-upstream-fair-master
http {
...
upstream myserver {
fair;
server 192.168.1.2:8080;
server 192.168.1.3:8080;
...
}
...
server {
...
location / {
proxy_pass http://myserver;
}
}
}

本文介绍了在Ubuntu上通过apt安装的Nginx配置文件路径,并详细讲解了Nginx实现负载均衡的六种方法:包括轮询、加权轮询、ip_hash、最少连接数、url_hash(需要安装补丁)和fair(需要安装额外模块)算法,旨在确保服务器高效处理请求。
283

被折叠的 条评论
为什么被折叠?



