我是一名内网视频网站管理员。目前我们的网站在局域网内部署,向用户提供在线视频服务。在访问量大时,整体网站访问速度很慢。
服务器环境是centos7 apache mysql php,使用海洋cms作为内容管理系统。
在访问量大时(80端口连接数大约1200),使用top命令查看发现load average达到上百(cpu仅有8核心),并且大部分cpu使用都是wa状态。
由于服务器使用的是挂载的网络存储,我想可能是硬盘io限制了速度。
请问有没有优化办法?
可以看看是否是 IO
问题,我猜测是因为大量视频的流量传输,将带宽占满,导致网址本身的性能有影响。
可以将资源与网站服务区分开来。常规的做法就是资源上云,比如阿里云 OSS 等。
4 回答13.2k 阅读✓ 已解决
5 回答7.7k 阅读✓ 已解决
6 回答2.7k 阅读
2 回答1.9k 阅读✓ 已解决
1 回答3k 阅读✓ 已解决
2 回答1.9k 阅读✓ 已解决
2 回答1.6k 阅读
看到标签里面加了nfs。如果wa比较高,那么大概率就是磁盘io比较慢了。
如果优化的话,感觉可以尝试从下面几个方向入手(具体我也没有接触过,不一定对)。
nfs
如果是网络宽带的原因,nfs服务器的读写速度比网络带宽要高的情况下,那么就可以考虑升级服务器的网卡,提高网卡的速度。
如果nfs服务器的带宽比网络带宽高得多,并且nfs服务器的磁盘读取速度比网络带宽要小得多,那么可以考虑试试升级到ssd硬盘,提高nfs的读取速度。
如果都不是上面(硬件)到原因,那么考虑是不是软件挂载的原因,这个可能需要测试,但是这块我也不太熟悉。