我在Heroku上的一个工作程序中运行sidekiq,如下所示:
bundle exec sidekiq -t 25 -e $RAILS_ENV -c 3
其中一个操作使用的内存(>500mb(超过了工作人员允许的内存。作业完成后,内存仍未释放,我在heroku rails日志文件中得到了以下错误:
2018-11-13T00:56:05.642142+00:00 heroku[sidekiq_worker.1]: Process running mem=646M(126.4%)
2018-11-13T00:56:05.642650+00:00 heroku[sidekiq_worker.1]: Error R14 (Memory quota exceeded)
当内存使用量超过一定量时,有没有办法自动重新启动Sidekiq?
谢谢!
您是否尝试过减少内存碎片?在这里你可以在赫罗库做这件事。
如果这还不够好,你可以使用Heroku平台gem并定期重新启动sidekiq