我正在运行带有 Ubuntu 14.04 的 LAMP 系统。我的服务器上有 4 个核心和 8GB 内存
问题是,当我在空闲一段时间(2-3 小时或更长时间)后连接到我的网站时,需要很长时间才能加载。有时大约需要 60-110 秒。
网站在两种情况下加载缓慢
1) 当网站闲置 2-3 小时或更长时间时,就会发生这种情况。在第二次尝试及之后,在闲置一段时间后访问该网站,网站将在 8-10 秒内加载。
2) 我还有一个每小时运行一次的 RSS 费用。网站在运行 RSS 提要时也需要 60-70 秒。
请告诉我如何解决这个问题。
添加内容
第一张图片是 RSS 未在 cron 中运行时的图片,第二张图片是 RSS 在 cron 中运行时的图片。
total used free shared buffers cached
Mem: 7985 3981 4003 0 183 1943
-/+ buffers/cache: 1855 6130
Swap: 0 0 0
答案1
这很可能是由于内存问题。准确地说是交换内存。空闲期间必须运行某种内存密集型任务,并且所有 Apache、php 和其他程序都会换出。一旦你尝试连接,他们就会换入,但这需要很长时间。一旦它们回到内存中,一切就都正常了。解决方案:
给你的机器添加更多内存。
通过使用cgroups。
在执行此操作之前,请诊断您的内存使用情况、系统负载、swapiness 参数,以验证这确实是罪魁祸首。