监控系统突然提示某系统交易时间过长,但业务量并不繁忙。
- 登陆系统应用服务器,用
nmon
查看CPU,发现大量CPU Wait的情况,说明CPU在等待IO - 通过kill -3 pid获取javacore文件,从javacore中也能看到多数线程卡在写日志的环节
- 检查系统IO发现吞吐量并不大
- 由于系统日志存在某个nfs挂载的目录中,用
nfsstat
发现大量重传包 - 在nfs目录中用
dd
测试性能发现写入速率只有几兆 - 通过
scp
往nfsserver主机拷贝文件测试写入数据,速度可以达到一百多M,说明网络通畅 - 检查 nfsserver 日志,发现有错误提示,重启nfsserver后系统回复正常
- 建议日志写入操作由专门的线程来负责,其他线程不要由于写日志这种不重要的事情而影响工作。
- nfsserver的服务日志有必要纳入监控系统。