【 在 yeshao (叶少·昨夜西风凋碧树) 的大作中提到: 】
: 但是你那句load超过一的机器也支持不了多少人不对吧?
: load超过一说明始终有一个任务在队列里面等着。
: 不过也没什么大不了的,让他等就是了。
: 本来cpu就是分片给的,只是load超过一等的时间长一些而已。
人家说的有道理的, load 超过 cpu 个数就表明系统已经不能够及时处理掉当前的请求
有出现请求产生速度超过请求处理速度导致 load 不断上升的可能
一般来说, 对于总体 cpu 时间不足的情况, 这个并不是非常危险, 因为产生请求也要靠
cpu , cpu 时间片少会导致产生请求的速度也下降,这里是一个负反馈, 系统可以
稳定保持在某一个 load 较高的状态而不会出现太大问题, smth 的老机器以前经常
是稳定保持在 10 - 100 左右的 load , 大家也没觉得慢的要死, 慢的要死的时候都是
已经到 250 以上了
但是 load 的值高并不代表的就是 cpu 不足, 有的时候可能是系统 io 成为瓶颈
这种情况就比较恐怖了, 如果是接受用户操作的那端(网络io)不足,这还没什么
如果是后端磁盘 io 跟不上, 很可能会出现请求产生速度持续超过系统处理能力
load 可以持续上升, 这时候虽然也许 cpu idle 还多, 但是用户已经觉得慢得要死了
一般是有一个阈值的, 过了这个阈值, load 就会突然飞快增长上去, 只有踢一批
人才能解决, rexchen 老大说的 3000 人左右就是这个经验阈值, 根据水木的经验
差不多也就是这个值了, 老水木服务器(双 powerpc 355MHZ还是 533MHZ 忘了,
40M SCSI 卡) 在没改程序之前大概是 2500 人左右(?), 经 KCN 优化后到了 3400 左右
过了这个值就会狂长 load
另外从用户心理角度讲 bbs 和 ftp 不一样, 用户一般是没兴趣跟 ftp 交互的,
ftp 慢就慢了, 怎么着都能下下来, 如果 bbs 按一个键停顿超过 10 秒的话, 人们一般
认为这个机器已经完全撑不住了, 需要换机器
--
FROM 166.111.164.206