我在使用 UWSGI + HAProxy 时遇到了问题。对于所有关闭的连接,我都会在 uwsgi 文件中看到此日志[uwsgi-http key: client_addr: 192.168.173.250 client_port: 57002] hr_read(): Connection reset by peer [plugins/http/http.c line 917]
我可以轻松地用这个重现它
>>> for i in range(10):
... requests.get('http://my-ha-url')
...
<Response [200]>
..
<Response [200]>
我看到了
[uwsgi-http key: client_addr: 192.168.173.250 client_port: 35534] hr_read(): Connection reset by peer [plugins/http/http.c line 917]
...
[uwsgi-http key: client_addr: 192.168.173.250 client_port: 59134] hr_read(): Connection reset by peer [plugins/http/http.c line 917
但是如果我不通过 HA(调用端点)直接调用,uwsgi 中就不会有日志。
有谁知道会发生什么?HA 是否会维持连接并在某个时候切断它?
答案1
看来,我们的 uwsgi 配置存在问题
http-keepalive = 650
,并且导致了这个问题。