我在 Heroku 上将 sidekiq 与我的 Rails 应用程序一起使用,主要用于处理邮件 (ActiveJob)。在过去一年左右的时间里,我一直心满意足地使用 sidekiq 3.x。最近,我们的应用程序流量增加,当我们看到内存使用量接近分配的最大值 512MB 时,我们决定更新到 sidekiq 4.0.1。
我期待在 sidekiq dyno 上看到内存使用量的大幅减少,但结果却恰恰相反!我最终不得不将 dyno 升级到 1GB 内存。
现在,我真的很想调查导致内存使用量增加的原因,但我不知道从哪里开始。我所做的唯一更改是根据以下内容更新被认为有漏洞的 gem :https://github.com/ASoftCo/leaky-gems
有人得到了一些关于如何跟踪运行 sidekiq 的 heroku dyno 的内存使用情况的好建议吗?我让 sidekiq 以默认并发数 25 运行,并连接到 heroku 提供的 redis-cloud 插件。
最佳答案
降低并发度。更多并发性 == 更多内存使用。
关于ruby-on-rails - 在 Heroku 上升级到 sidekiq 4.0.1 后出现内存配额错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33959364/