Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我确信我看到了一些用 Go 编写的开源服务器,它能够重新启动并保持连接打开。
我找不到它来学习这种技术。
我知道 apache.httpd 已经apachectl graceful重新启动并保持连接打开。
apachectl graceful
它在一般情况下和 Go 中是如何完成的?
我认为它必须分叉和 1 退出,2 exec(新的 go 应用程序)并通过 Fd 链接连接。
但是在 Go 中我只能找到ForkExec函数。我认为Fork是必需的。包也syscall没有很好的记录。
ForkExec
Fork
syscall
CloseOnExec 可能会有所帮助,
FileListener、CloseOnExec 和正常重启服务器
Go 中 TCP 服务器的零停机升级