Sidekiq 正在消耗过多内存(使用量:522.12M)用于“”,正在重启

我在日志中看到这些错误越来越频繁。我应该在 /var/discourse/containers/app.yml 中稍微提高 Sidekiq 的 RSS 限制吗:

env:
  SIDEKIQ_MEMORY_KILLER_MAX_RSS: 700

还是这是正常的,应该被忽略?

1 个赞

这对我来说是有效的。

在调整设置并监控内存使用情况后,我能够停止频繁出现的**“Sidekiq 消耗内存过多…”** /log 消息。

我在 /var/discourse/containers/app.yml 中进行了此更改:

  UNICORN_WORKERS: 4
  UNICORN_SIDEKIQ_MAX_RSS: 700

最初,我将 UNICORN_WORKERS 设置为 8这过于激进,为 Sidekiq、PostgreSQL、Redis 和操作系统留下的余地很小

减少到 4 个工作进程释放了大量内存。

然后,我将 Sidekiq RSS 限制从默认值(约 500 MB)提高到 700 MB,这使得 Sidekiq 在被自动重启之前有更多的空间。

到目前为止,Sidekiq 已经稳定下来,内存使用量现在处于一个安全得多的区域,有超过 1 GB 的内存从已用内存转移到缓存和可用内存。

如果这对您有帮助,或者为遇到类似问题的其他人提供了一个提示,我会将其留在这里。有趣的是,如果在一周的正常运行时间后它仍然稳定,我将将其标记为已解决。

2 个赞

我最近也有收到这个提示,并且像你一样将其调整为(1GB),之后错误就没再出现过了 :slight_smile:

1 个赞

确认更改已生效。Sidekiq 最后一次重启时间为 10月11日 下午12:48

今日内存统计:

这些论坛中有(上面链接的)有用的帖子,它们很有帮助。希望这也能帮助到其他人。

我发现我的论坛流量远未达到需要 8 个 worker 的程度。即使是 2 个也足够了。

话虽如此,内存似乎有点紧张,但我计划继续以相同大小运行虚拟机。由于 swap 是 RAID 10 中的非常快速的 NVMe,我将来如果流量需要,最终会添加 zswap 并更新此帖子。

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.