在工作日,服务器上使用优化后的网站人流量很少的时候,页面完全加载(不包括第三方广告)的时间大约为0.6秒到1秒。
现在,当很多用户同时访问该网站时,加载时间会超过 Google 建议的时间。加载时间为 1.8 秒。我试图将其控制在 1.5 秒以内。
我查看了可能影响该问题的日志。我查看了 iostat,发现:
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sda 1.29 5.06 4.05 2.07 24.74 28.50 17.41 0.23 37.09 2.76 1.69
然后我查看了繁忙时间段内的系统活动报告:
03:30:01 PM all 0.10 0.01 0.02 0.07 0.00 99.80
03:40:01 PM all 0.10 0.01 0.02 0.08 0.00 99.79
03:50:01 PM all 0.22 0.01 0.03 0.13 0.00 99.61
04:00:01 PM all 0.11 0.01 0.02 0.12 0.00 99.75
04:10:01 PM all 0.09 0.01 0.02 0.09 0.00 99.78
04:20:01 PM all 0.17 0.01 0.02 0.13 0.00 99.67
04:30:01 PM all 0.20 0.01 0.02 0.12 0.00 99.65
04:40:01 PM all 0.10 0.01 0.02 0.11 0.00 99.75
04:50:01 PM all 0.08 0.01 0.02 0.09 0.00 99.80
05:00:02 PM all 0.14 0.01 0.03 0.13 0.00 99.69
05:10:01 PM all 0.16 0.01 0.02 0.13 0.00 99.68
05:20:01 PM all 0.15 0.01 0.02 0.14 0.00 99.68
05:30:01 PM all 0.17 0.01 0.02 0.15 0.00 99.65
05:40:01 PM all 0.32 0.01 0.03 0.16 0.00 99.48
05:50:01 PM all 0.37 0.01 0.04 0.16 0.00 99.42
06:00:01 PM all 0.08 0.01 0.02 0.08 0.00 99.81
06:10:01 PM all 0.18 0.01 0.02 0.14 0.00 99.65
06:20:01 PM all 0.09 0.03 0.02 0.11 0.00 99.76
06:30:01 PM all 0.10 0.01 0.02 0.09 0.00 99.78
06:40:01 PM all 0.10 0.02 0.02 0.08 0.00 99.78
06:50:01 PM all 0.14 0.01 0.02 0.11 0.00 99.72
07:00:01 PM all 0.12 0.01 0.02 0.12 0.00 99.74
07:10:01 PM all 0.08 0.01 0.02 0.08 0.00 99.82
我之所以选择这个时间,是因为服务器提供商有一个 Cacti 图表,可以向我显示用户因任何原因访问服务器的时间。繁忙时段的请求平均约为 100Kb/s,范围在 50 到 400kb/s(千位)之间。
CPU速度在3GHz左右,内存为8GB。
因此,我想知道在处理流量很大的网页时,我应该配置哪些 Linux 设置才能使服务器以适当的速度运行。
我尝试通过增加读写缓冲区来优化我的 tcp 设置。
我也尝试增加我的 Apache 子进程(一次增加到 66 个),这样用户就不必永远等待积压才能得到服务,但我正在考虑降低这个数字。
我可以使用哪些特殊的 Linux 设置来提高服务器的整体速度并使页面在高负载下加载得更快?