为了账号安全,请及时绑定邮箱和手机立即绑定

Golang 如何使用 keep alives 处理优雅关闭

Golang 如何使用 keep alives 处理优雅关闭

Go
POPMUISE 2021-08-16 19:09:48
我已经构建了一个可以在多个节点之间平衡的代理服务器。我还使它可以在零停机时间重新加载。问题是大多数节点都保持活动连接,我不知道如何处理这些。有时服务器无法关闭 1 或 2 个不会关闭的打开连接。我的第一个意见是在关机时设置超时,但这并不能确保每个连接都正确终止。我想到了需要几分钟才能完成的下载。任何人都可以给我一些好的建议在这种情况下该怎么做?
查看完整描述

1 回答

?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

您拥有的一种选择是最初仅关闭侦听套接字,并在退出之前等待活动连接。

释放侦听套接字后,您的新进程就可以自由启动并接受新连接。然后,旧进程可以继续运行,直到其所有连接正常关闭(这就是 HAProxy 重新加载的方式),或者直到您选择更长的超时时间。


查看完整回答
反对 回复 2021-08-16
  • 1 回答
  • 0 关注
  • 216 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信