线上系统奇怪问题总结,性能问题不能依赖经验
曾经遇到一个系统,会在一个时间范围内白屏,开发测试程序过程中从来没有遇到过此类问题,
经过线上分析以及查看系统资源使用情况和问题发生环境,发现在入库时cpu占用为100%导致影响
整个系统使用。
查到问题通过同步控制抽取数据逻辑,并且抽取很快不会导致整个程序变慢。在不对程序进行很大
改动前提下完美解决问题。
另一个问题已有系统归档数据特别慢,开始分析为服务器资源紧张设备io导致慢,后现场发现程序在
某个逻辑处会卡住很久,经查oracle
经过查程序定位某个逻辑耗时特别长,查询数据库最长耗费语句,发现某个语句无索引,加上索引程序性能提升几百倍。
需要总结的是不能有经验依赖觉得是网络、磁盘io导致慢,性能问题要通过工具分析处理。