我只是创建了一个在后台重新启动apache的工作程序,因为在rails应用程序中执行此操作只会冻结该应用程序并引发“内部服务器错误”
我正在做一些极端简单的事情。
这是我的工人:
# app/workers/reload_apache_worker.rb
class ReloadApacheWorker
include Sidekiq::Worker
def perform
`sudo /etc/init.d/apache2 graceful`
end
end
我只是用ReloadApacheWorker.perform_in(5.seconds)
什么都没发生。我在sidekiq Web界面中看到它“忙”。
我在做什么错?我与.perform_async
一起执行的另外2个工作人员都工作正常,因此我不确定这是怎么回事。
答案 0 :(得分:0)
如果在请求期间(内部)重新启动服务器,则会收到错误消息,因为它不会响应,因此会收到错误消息。