shoryuken gem是一个后台工作者,用于从aws SQS读取的rails应用程序。
我可以在当地经营shoryuken工人,并且工作正常。当我在AWS的生产环境中运行它时,它不起作用。你如何在生产环境中运行shoryuken?我也认为这可能是我的aws安全组的一个问题。我们正在使用VPC。我应该允许SQS端口吗?如果是这样,SQS运行的端口是什么?我也想知道为什么它要问5432端口是我们Postgres DB的端口。
bundle exec shoryuken -r path_to_my_worker.rb -C config/shoryuken.yml --rails RAILS_ENV=production
could not connect to server: Connection refused
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
答案 0 :(得分:3)
尝试在RAILS_ENV=production
之前传递shoryuken
。如果你之后传递它,它将无法工作。
RAILS_ENV=production bundle exec shoryuken -r path_to_my_worker.rb -C config/shoryuken.yml --rails
答案 1 :(得分:0)
事实证明,shoryuken正在加载我的开发环境。当我将我的设置从生产中复制到database.yml中的开发时,它起作用了。这似乎不对。我不知道如何传递命令使其在生产模式下运行。我试过" RAILS_ENV =生产"和" -e production"已经,对shoryuken没有影响。