问题
- 程序升级过程中,如何不影响正在处理的请求?
- 正在处理的请求怎么办?
- 新进来的请求怎么办?
正在处理的请求
新来的请求怎么办?
- Fork一个子进程,继承父进程的监听socket
- 子进程启动成功后,接收新的连接
- 父进程停止接收新的连接,等已有的请求处理完毕,退出
- 优雅重启成功
子进程如何继承父进程的文件句柄?(linux下)
- 通过os.Cmd对象中的ExtraFiles参数进行传递
- 文件句柄继承实例分析
golang平滑重启
原文:https://blog.51cto.com/u_15144024/2840146