我正在向主进程发送USR2信号,以使用独角兽实现零停机部署。在旧的主进程结束后,我遇到了以下错误:
adding listener failed addr=/path/to/unix_socket (in use)
unicorn-4.3.1/lib/unicorn/socket_helper.rb:140:in `initialize':
Address already in use - /path/to/unix_socket (Errno::EADDRINUSE)
在unicorn.rb配置文件的before_fork
块中,老的主进程被杀死了。该进程是通过upstart启动的,没有使用守护进程(-D)选项。
对于发生的情况有什么想法吗?