【问题标题】:Puma Won't Restart With A SIGUSR1 signalPuma 不会通过 SIGUSR1 信号重新启动
【发布时间】:2013-10-26 14:53:53
【问题描述】:

我有一个简单的 sinatra 应用程序,我在 nginx 后面的 jruby 上使用 puma 提供服务。

我的示例应用程序已启动并运行良好。

我现在正尝试通过发送 SIGUSR1 信号手动重启 puma 服务器,如the puma docs 中所述。但是,我没有导致服务器重新启动,而是开始收到 502 bad gateway 错误。 nginx 日志显示:

013/10/17 20:40:12 [error] 755#0: *25 connect() to unix:///var/run/mysockets/te 
st_app.sock failed (111: Connection refused) while connecting to upstream, clien 
t: <my ip>, server: jonahtest.example.com, request: "GET / HTTP/1.1", upstr 
eam: "http://unix:///var/run/mysockets/test_app.sock:/", host: "jonahtest.example 
.com"

因此,它不会重新启动,而是停止工作。以下是我发出 SIGUSR1 信号的方式:

deploy@server:/var/www/webricktest$ jobs -p
863
deploy@server:/var/www/webricktest$ kill -s SIGUSR1 863
deploy@server:/var/www/webricktest$ jobs -p
863
[1]+  User defined signal 1   puma -e production -b unix:///var/run/mysockets/test_app.sock
deploy@server:/var/www/webricktest$

此后不久,原始 puma 进程和用户定义的信号都消失了,如果我再次运行jobs -p,我什么也得不到。但是,套接字仍位于 /var/run/mysockets/test_app.sock,我必须手动 rm 才能重新启动 puma。

我的问题是:为什么kill -s SIGUSR1 &lt;pid&gt; 无法重启 puma?我怎样才能让它发挥作用?

谢谢!

【问题讨论】:

    标签: ruby-on-rails nginx sinatra puma


    【解决方案1】:

    这是我的一个简单错误,是由于阅读了一些过时的教程造成的。

    您只需要发送SIGUSR2 信号而不是SIGUSR1

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-18
      • 2018-11-23
      • 1970-01-01
      相关资源
      最近更新 更多