我有一台运行Ubuntu Server的机器,今天遇到了严重的问题,没有明显的原因。 它运行的两个服务是apache2和ssh ,在服务器很慢的时候,我无法访问。
我一直在检查/var/logs/ 。 这件事情还没有发现,但是我再也不知道我在找什么
如何诊断问题,以便今后能够采取措施防止再次发生?
完整的故事/细节:
更新
分配给这个特定VM的硬件是:
根据你的更新,如果你没有进行开箱即用的调整(甚至可能无法调整),那么512MB的内存就可以满足35位同时学生的需求了。 如果您有能力这样做,请将内存限制提高到2GB。 这应该提供一个安全的垫,以便该箱不会交换太多,以至于它不响应。
除此之外,如果打开httpd.conf文件中的keepalive,就可以启动它,这样连接就不会被打开。 接下来将是禁用任何你不使用的httpd模块来尝试和最小化每个进程的内存使用量。 第三,假设你无法增加内存限制,把你的httpd.conf中的MaxClients改为8(如果你能够增加服务器的内存,尝试使用RAM / 64作为一个值)。 第四,虽然这可能看起来是反直觉的,因为内存不足,请安装APC for PHP操作码caching。 你会为caching牺牲less量的内存,但连接可能会更快一些,为其他人腾出空间。
长时间运行,考虑将httpd切换到工作/事件模式,并将PHP作为FastCGI运行,或者切换到像nginx这样的轻量级Web服务器。