问题描述
这是haproxy配置。
defaults
option forwardfor
log global
option httplog
log 127.0.0.1 local3
option dontlognull
retries 3
option redispatch
timeout connect 5000ms
timeout client 5000ms
timeout server 5000ms
listen stats
bind *:9000
mode http
..............................................
backend testhosts
mode http
balance roundrobin
option httpchk HEAD /sabrix/scripts/menu-common.js
server host1 11.11.11.11:9080 check inter 2000 rise 1 fall 2
server host2 11.11.11.12:9080 check inter 2000 rise 1 fall 2
如果11.11.11.11的服务关闭,则haproxy将在大约2-3秒内收到503和404错误(取决于中间值,如果中间值非常高 小,则会减少404错误的数量。
2020-08-25T11:58:14 11.11.11.11:9080 200 POST / tsturl1 HTTP / 1.1 2274
2020-08-25T11:58:14 11.11.11.22:9080 200 POST / tsturl1 HTTP / 1.1 448
2020-08-25T11:58:14 11.11.11.11:9080 503 POST / tsturl1 HTTP / 1.1 0
2020-08-25T11:58:14 11.11.11.11:9080 404 POST / tsturl1 HTTP / 1.1 0
2020-08-25T11:58:14 11.11.11.11:9080 200 POST / tsturl1 HTTP / 1.1 1503
2020-08-25T11:58:16 11.11.11.22:9080 200 POST / tsturl1 HTTP / 1.1 617
2020-08-25T11:58:16 11.11.11.11:9080 404 POST / tsturl1 HTTP / 1.1 0
2020-08-25T11:58:16 11.11.11.22:9080 200 POST / tsturl1 HTTP / 1.1 618
2020-08-25T11:58:16 11.11.11.11:9080 404 POST / tsturl1 HTTP / 1.1 0
2020-08-25T11:58:16 host1关闭,原因:Layer7错误状态,代码:404,信息:“未找到”,检查持续时间:0ms。剩下1台活动服务器和0台备用服务器。活动会话数为0,重新排队为0,队列中剩余0。
2020-08-25T11:58:16 11.11.11.22:9080 200 POST / tsturl1 HTTP / 1.1 645
2020-08-25T11:58:16 11.11.11.22:9080 200 POST / tsturl1 HTTP / 1.1 618 \
我的问题是: 为什么参数重试不起作用?即使后端服务器之一发生故障,用户是否总是可以获得200个代码而不是400个错误? 我正在使用Haproxy 1.5.18。
非常感谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)