今天上午11:35~11:40左右,由于负载均衡中的两台云服务器CPU占用突然飚至100%,造成网站5分钟左右不能正常访问,请大家带来了麻烦,请谅解!
(上图中红色曲线表示CPU占用)
经过分析,我们确认CPU 100%问题与启用Windows虚拟内存有关。
原先这两台云服务器是禁用虚拟内存的,但昨天由于虚拟内存不够用,造成了服务器自动重启(详见云计算之路-阿里云上:禁用Windows虚拟内存引发的重启),于是启用了Windows虚拟内存。在今天访问高峰期高并发的情况下,引发了CPU 100%故障。
之前在阿里云 vs Azure的虚拟机对比测试中发现过启用虚拟内存会造成CPU占用高的问题,但到现在也不知道究竟是页面交换文件的磁盘IO引起的,还是Xen虚拟机引起的。只能等阿里云的高性能磁盘上线,将虚拟内存放在高性能磁盘上去验证。
目前的临时解决方法:增加物理内存(避免出现虚拟内存不够用的情况),禁用虚拟内存(避免出现高并发下CPU 100%的问题)。
2014年1月24日更新:使用带临时磁盘的云服务器开启虚拟内存不会有这个问题。