工作遇到的问题分析【1】

请注意,本文编写于 2817 天前,最后修改于 185 天前,其中某些信息可能已经过时。

计划是把工作中遇到的一些典型的问题,做个问题总结,之前遇到的,找时间来写。



先把今天遇到的一个问题分析下



问题场景:



     是项目中有一块的程序数据处理变慢了,而且,现象是中午有变慢,下午的时候,就会趋于正常。查看日志也没有发现出现错误。



过程分析:



    程序流程:



     



     问题分析:



     现象是表2的数据插入很慢。



     分析问题有两点可能出问题, 一个是在读取q1,做数据封装,数据逻辑处理给变慢了;



     另外一个是在做删除表1的时候,删除的慢了;



     



     最后分析的是排除了第一种原因,因为这一步简单,在实际中也就是服务器进行一下交互,服务器和网关都是足够健壮的。



     定位在第二种情况,原因是删除表1 和 插入表2是个串行的操作。表1每天中午都会做大量的插入操作,在程序流程处理中也同时在做更新、删除的操作,对表的压力巨大,当删除操作变慢了,同样就影响了对表2的插入,导致插入表2的操作变慢,这样的后果,q2的队列存储容量也长时间处于饱和状态,存入Q2也随之延后,读取Q1,封装数据的逻辑处理也延后了,当然Q1的容量也饱和了,第一步的操作也变慢了。



     最终的结果就是整个数据处理都变慢了。



     解决办法:



      a、将表1的删除和表2的插入进行异步操作



      b、对表1的不做删除,将表1的删除做记录id的操作,每天晚上定时进行删除。



← 上一篇 下一篇 →
Comments

添加新评论