最近四天的心路历程

作者: fd865cacd080 | 来源:发表于2017-05-16 22:34 被阅读36次

周一晚上,项目经理小雷给我打电话,说程序运行还是很慢,查询目录的时间平均在10秒左右,有的时候会看到进度条一直在那里转,到最后显示页面不存在。

上周开始小雷不断地跟我反映软件运行太慢,我告诉她重启一下tomcat服务再试试。刚开始重启服务之后,程序就能够正常的使用,查询效率提了起来。但是过不了多久,大概3到4个小时,程序又会坏掉。直到最后每隔一个小时需要重启一下程序,每次查询目录依然很慢。

于是与K总商量了一下,周六过去看看出了什么状况。

周六5点起床,晚上11点才回到武汉,没能找到问题的原因。

于是象征性地讲程序重新部署,以期望程序能够达到最初使用程序时的1秒内的查询状态,但结果却不尽人意,重新部署完之后,程序依旧查询很慢。

星期天,去了东西湖,K总把从别处借来的一台老式的高速扫描仪放在了办公室。我从住处出发,转公交到光谷广场坐地铁2号线到循礼门转1号线到五环大道口下,然后步行至建设局。

我驾轻就熟地将扫描仪搬出来摆放好,连接上电脑之后,转好驱动和客户端程序,完成调试,录制了操作视频,以给这边地项目经理做指导视频。

扫描仪布置完毕,杨总也赶了过来跟我弹合作。杨总是K经K综总介绍知道了我,想要跟我合作几个学校的档案项目。

谈了一个多小时不到,杨年龄比我还小,性子比较直,说话很直接,问我对于项目的想法,我简单地说了一下,最后我说项目可以做,但是我也只能利用周末的时间来帮忙。

周日这一天还算顺利,于是坐车去金融港剪了个头。

剪完头骑着ofo回到住处,已是晚上9点多钟。

周一下午小雷突然给我发来微信,说程序奔溃了,根本就用不了了。

我的本质工作是个程序员,周一往往是最忙的时候,手头的研发任务也颇为棘手,听到远在XY市的小雷报告我是心急如焚,但也只得微信会过去,“知道了”。

没过多久K总电话也打了过来,程序奔溃问题得尽快解决,不然10来个人就得闲在项目上,成本太高。我也知道这一点,但是我却在犹豫要不要请假,此前请了很多次假了,我的研发主管多我意见很大了,心情异常复杂。

只得尝试着远程指导小雷去定位程序问题,我也思考是什么原因影响力程序运行效率。

1、网络,网路延迟导致数据传输过慢。

2、数据库并发数目限制,数据库平时并发访问阻塞了我们程序对数据库的访问。

3、缓存,程序运行过程中产生了大量缓存,导致程序臃肿,进而影响程序运行效率。

4、数据库语句查询耗时,表单展示分为两个过程:查询数据、展示数据。而通过sql查询的数据可能非常耗时。

我给小雷打了电话,指导她清理了缓存,结果清理完程序无法运行了。

电话指导很是费劲,我电话也打了很长时间,该回到岗位上了。于是跟小雷说晚上下班之后再作指导吧。

K总又来了电话,我把我的安排告知给了K总,晚上我回去再远程指导小雷,如果还是不能解决,那我第二天再请假过去XY市现场看看。K总听到这样说心里缓和了许多。

晚上7点回到住处,通过视频,指导小雷操作程序,倒腾了两个小时,最后程序还是启动不了。

于是硬着头皮给研发主管打了个电话请假,研发主管没说什么就同意了,但是我心里还是有点忐忑。

紧接着给K总去了电话,准备明天过去看看,让K总给我定一下车票。

把计划排好之后看了一个小时娱乐节目,老婆又打来了电话,跟我诉说她跟我老妈相处的苦楚,老婆很是懂事,老妈却总是误解她,而我又不好直接说我妈,反而会加剧老婆老妈之间的矛盾。

于是与老婆聊了一个多小时电话,聊完看了下时间已是凌晨1点多,上了床却睡不着,想着老婆老妈之间的各种小的摩擦,心里一团乱麻。

又想到要去XY,能不能解决问都还是个问题,弄不好就要在那里呆两天,这样又得跟我的研发主管请假。周六与杨总会面之后还没有进一步谈具体的合作方式以及利益分成。各种挑战性的问题有待解决。

于是索性不想了,开始看最近热播的《欢乐颂2》,直到凌晨3点倦意才袭来。

睡了两个小时,5点起床,赶7:50点火车。

到XY市办公市已经是中午11点,与许久不见的L科长打了招呼马上便投入到程序奔溃问题定位工作中来。

我现实排除了缓存的问题,清理掉所有缓存之后再启动程序,程序的查询效率依旧在10秒左右。

然后又检查了oracle的访问链接,发现不存在多并发阻塞我们程序查询数据库的问题。

至于网络,在客户端不断ping服务器的IP,无论是程序停止,还是程序查询数据库过程中,ping服务器的响应时间均在1ms左右,那也就排除了网络问题。

只剩下最后一个问题,SQL语句查询效率问题,但是捣鼓了半天都找不出SQL语句执行的日志文件。

于是升级了研发平台,切换成DEBUG模式之间重启程序便能够读取SQL查询的日志记录。

定位出在目录中两意思SQL语句执行时间分别是2693ms和2386ms,这大大超出了预期,SQL查询低于1m才是正常情况。

于是着手优化程序代码内的SQL,总结一下在两方面做了优化:

1、select * from table改写成select field1,field 2... from table由差表全部字段改为查具体用到的字段。

2、将where后面过滤的语句中的"='value' "换成"like 'value' ",不知道原理是什么,但测试结果是前后查询效率变快了。

3、在下发SQL时将过滤语句组装,而不是查处全量数据再在程序里过滤。

已是优化工作做完,原先的程序表单查询由原来的10s降低到1s,彼时已经是下午5点,悬着的一颗心才放了下来。

问题解决完立马向K总汇报了成果,让K总给我定了下午7点回汉的动车,而此时当我快要完稿此篇文章时,我已经到了光谷广场,22:30,等着回去的公交车。

算了一下周末两天加上周一和今天这四天一共才休息了17个小时不到。

相关文章

  • 最近的心路历程

    嗯,有很久没有提笔了,然后呢,今天提笔写下东西,因为昨天给自己定了1000字的目标,所以有时候人是在压力下有压力才...

  • 说说最近的心路历程

    时间一天天流逝,毕业的脚步随着秋天树叶的一天天飘落而更逼一步。大学生活转瞬间就要悄然而至,怎么年龄越长,时间越觉得...

  • 最近的心路历程小记

    有段时间没写东西了,毕竟上个月底刚开始上班的,而且偶尔还加班,回家还要陪宝宝,就我和老公二个人带,感觉还是有点忙的...

  • 聊聊最近的心路历程

    之前有提到过,最近工作内容发生了较大变化有好一阵子不适应,这是因为我的团队、工作环境和每天面临的事情都变了。今天,...

  • 最近写作心路历程

    这段时间开始了《楚妃传》的写作,启发我的是纪录片《楚国八百年》。第一次尝试历史小说,是新的突破。 对于春秋战国那段...

  • 最近四天的心路历程

    周一晚上,项目经理小雷给我打电话,说程序运行还是很慢,查询目录的时间平均在10秒左右,有的时候会看到进度条一直在那...

  • 最近的心路历程:认识,了解,悦纳,改变

    认识,是链接的第一步 了解,加深对个体的认知程度 悦纳,接受当下的状态 改变,在接受当下状态的基础上,真正为目标和...

  • 2018-08-10

    心路历程

  • 2019-04-27

    心路历程

  • 更换为storyboard启动图,解决None of the i

    先说一下心路历程 最近苹果要求所有上线的app必须以storyboard(故事板) 来提供 app 的启动屏幕。于...

网友评论

    本文标题:最近四天的心路历程

    本文链接:https://www.haomeiwen.com/subject/jshrxxtx.html