









我有二个jar包的API端口,8011和8012,请实现完整的单台二个端口负载。
以下是完整的单台双端口负载均衡配置:
http {
# API服务负载均衡组
upstream api-backend {
server localhost:8011 weight=1 max_fails=3 fail_timeout=30s;
server localhost:8012 weight=1 max_fails=3 fail_timeout=30s;
# 负载均衡策略
least_conn; # 最少连接数
# 连接池优化
keepalive 32;
keepalive_requests 100;
keepalive_timeout 60s;
}
server {
listen 80;
server_name localhost;
# API代理配置
location /api/ {
proxy_pass http://api-backend/;
# 代理头设置
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 超时设置
proxy_connect_timeout 5s;
proxy_send_timeout 60s;
proxy_read_timeout 60s;
# 缓冲设置
proxy_buffering on;
proxy_buffer_size 4k;
proxy_buffers 8 4k;
# 重试设置
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
proxy_next_upstream_tries 2;
proxy_next_upstream_timeout 3s;
}
}
}
weight=1:权重相等,平均分配
max_fails=3:3次失败后标记不可用
fail_timeout=30s:30秒后重新尝试
least_conn:优先分配给连接数少的服务器
keepalive 32:保持32个长连接
proxy_next_upstream:自动故障转移
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。