我们正在运行一个开放的suse 10:Authentic AMD,双核心AMD Opteron(tm)处理器1212 HE,具有2 GB的内存。
主办为Apache Vhots有:
有时CPU负载会上升到15.我们不知道为什么? 当负载上升时,服务器仍然崩溃。
对于这样一台机器来说是多less?
系统负载数字并不完全受CPU功率的影响,因为除了在计量期间内正在进行处理的进程的平均数量以外,还计算了如果他们没有等待I / O操作完成的那些数量。
许多重负载峰值是由于I / O争用。 这可能是由很多因素造成的:内存不足(所以信息缓慢和/或交换活动增加),在这种情况下,增加更多的内存可以帮助很多,坏的数据库devise或对数据库的错误查询导致全表扫描,而索引扫描是可能的,或者子查询运行100次,可以使用更有效的连接 – 更多的RAM也可以在这里帮助,但这与改进devise相比是最好的临时解决scheme) ,具有较慢的I / O子系统(比如慢速磁盘,或者使用RAID5来执行很多小写操作的系统,等等),或者上面的一些组合。
您应该监视CPU统计数据(%IOWait以及%user,%system和%nice),内存/交换使用和磁盘I / O,以查看在繁忙时段发生的情况,以获取更多线索。 您还应该考虑更详细地监控Apache,看看是否有突然过多的命中特定虚拟主机的原因。 我通常使用http://collectd.org/进行这种监测,不过也有很多其他的解决scheme。 大多数数据库都支持日志查询,而这些查询的运行时间要比固定的时间长,所以把这个function打开可能会有所帮助(尽pipe你需要使用其他的线索来确定报告的查询是否需要很长时间,因为它们需要优化或者只是因为系统总体负荷很重)。
以平均或每秒0.6次命中,我怀疑你正在看到更高的命中率导致上述原因之一(I / O争用和/或内存限制,而不是CPU使用)的负载上升期间。 每日点击并不意味着一个非常糟糕的情况,除非你的stream量在一天中非常稳定,这是非常不寻常的 – 每天最繁忙时段的小时费率会更有意义。