ECS异常处理
一:准备
ECS:windows2008 r2 64位
本地机:windows10
二:具体问题分析
1:CPU、内存异常排除方法
当察觉到自己服务器实例 CPU 有时突然飙高,或内存消耗过大,可以参考以下方法,进行自我问题排除
    ï¼1ï¼ CPU 飙高时,尝试通过管理终端连接服务器,查看是否是 Windows Update 服务在进行自动更新
(2)CPU 飙高时,检查杀毒软件是否在后台执行扫描操作。您可以升级杀毒软件为最新版本,或者删除杀毒软件。
(3)尝试通过控制台连接服务器,打开任务管理,,在进程里安装CPU、内存进行排序,查看资源占有异常的进程有哪些,其中System ldle process代表空闲CPU,越高越好,查看查看到异常进程,可以点中后,右键选择“打开文件位置”,找到异常进程执行文件所在位置,选择删除还是关闭,如下图
您也可以通过 “任务管理器---性能---资源监视器”查看包括CPU、内存、IO和带宽的监控,以及包括每个进程的详细情况,如下图
2:虚拟内存不足
在 Windows 操作系统中,内核以及应用程序是通过虚拟内存来进行内存管理和使用由于物理内存是有限的资源,Windows 引入了 Paging File (页面文件)实现虚拟内存。以32位操作系统为例,每个进程有自己 2 GiB 专用的用户态虚拟地址空间
一般而言,当系统缺少虚拟内存会引起很多问题,包含但不限于:
(1)操作系统运行缓慢,甚至出现Hang(夯机),蓝色背景界面的情况
(2)用户本地控制台输入用户名、密码后,无法登录到操作系统,卡在欢迎界面
(3)无法远程桌面,提示”页面文件太小, 无法完成操作”
(4)安装服务失败,例如安装IIS、.NET Framework、FTP提示”资源不足”,或者安装进程卡住
(5)安装三方服务,例如MYSQL服务安装失败,或者安装完毕后无法启动
(6) Windows Update无法更新
(7)系统抛出”虚拟内存不足”的报错,应用程序由于内存分配出现异常关闭的情况。
(8)打开服务器管理器提示“MMC在一个管理单元检测到错误
(9)服务器管理器控制台打开后自动关闭
针对上述情况,有两种方法进行检测
方法1: 检查系统日志
打开事件查看器(运行->eventvwr), 在系统日志中发现”Resource-Exhaustion-Detector”报出的2004 错误,Windows 成功诊断出虚拟内存不足的情况。以下程序使用了大部分虚拟内存: mysqld.exe (1320) 使用了 2801614848 字节;svchost.exe (808) 使用了 422494208 字节;tomcat8.exe (2744) 使用了 336797696 字节。
方法2: 检查任务管理器
任务管理器中发现检查已提交内存与虚拟内存的比例。
出现上述系统虚拟内存耗尽的情况有如下可能性:
(1)系统物理内存资源不足
(2)系统未配置paging file (页面文件)或者页面文件配置较小
(3)系统存在内存泄露(包含其它各类可能的核心资源的泄露)
例如,某些情况下,正如上图,您可能发现系统仍然显示有可用的物理内存,但是仍然提示虚拟内存不足,这可能是系统Section资源消耗尽导致。
针对这种情况可以手动配置虚拟内存,可参考阿里官方文档
配置 Windows 系统虚拟内存