诊断定期周期性高内存使用

使用云服务商的标准系统监控工具,我们每天几乎在同一时间收到警报,因为内存利用率连续超过 10 分钟且高于 80%。这种状态通常持续 30 到 60 分钟或更久(持续时间似乎每天有所不同),且总是从大致相同的时间点开始。

  • 有人遇到过类似情况,知道该从哪里着手排查吗? 或者,换个角度……
  • 有没有简便的方法可以查看应用栈中是否有按此模式运行的计划任务,从而找出问题根源?

需要备份吗?尤其是如果您上传了大量文件。您可以查看 /sidekiq

不,备份也是我的首选方案。备份(包括 Discourse 和云提供商)目前每周才进行一次。(我可能应该改改,但得先找到这个幽灵问题再说!):thinking:

所以我查看了 https://discourse.example.org/sidekiq/scheduler,看起来那里的所有任务都是按周期轮转的,并不一定在每天的特定时间执行。有人知道这是否正确吗?如果是的话,这个周期是基于应用容器的启动时间吗?

这几乎肯定会涉及大量或一系列大型查询。仪表板重新计算和顶部重新计算就是两个可能的资源消耗大户。

不过,80% 的使用率也不算太糟,这意味着系统并未承受过大压力(从而避免进入交换内存),同时利用率高效,说明你正在充分利用你的(虚拟)硬件?