码迷,mamicode.com
首页 > 其他好文 > 详细

因我而起的生产事故

时间:2019-01-23 17:29:38      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:原因   事故原因   工资   没有   方法   加油   总结   一行代码   事故   

  首先,祝大家新年快乐!应该陆陆续续开始踏上了回家的征程吧!

  生产事故

   产品上线一段时间之后,技术支持反馈客户现场一个进程总是挂掉或者不干活!最开始不紧不慢的查找问题,后来老大很生气说:生产事故很严重,你们居然不重视!成立了一个应急小组,专门解决此问题,其中包括我!

   事故原因

    经过2、3天没日没夜的艰苦奋斗,终于找到进程挂掉的原因,问题因我而起。大约去年8月,做一个项目,与大数据对接,把数据推给它,然在加上了推送部分的代码,最开始那个模块是没有日志的,然后给加上了日志打印,当时也没考虑那么多,多线程环境,那个函数是线程不安全的,然后高并发环境,会造成进程挂掉!

   问题分析    

   高并发环境下,主要涉及两方面问题:

1、一个线程关闭了一个文件,另一个线程以为文件还是打开的,继续往文件里写数据,这样会导致进程挂掉(函数对线程是否安全!)

2、多线程环境共享全局变量,会造成数据混乱;alarm函数产生的SIGALRM信号,无法估算时间,此处理不严谨(最好不要在线程中用信号)。

  解决问题

   解决方法

  1. 在进程最开始打印日志,或不打印日志
  2. 移动代码位置,在正确位置修改代码

   加班到11点,把这部分代码重新修改了!

   之后,老大找我谈话:一个优秀程序员必须经历各种问题和bug,才能成长;还有以后修改问题,要谨慎!并没有很严厉的批评,但心里还是很难受!有人说过:如果跟着一个好老大,就好好地干几年!

  总结

   从小就不怎么犯错,犯过一个错,会很内疚!可能这个问题会伴随整个职业生涯,督促自己成长!

   1、谨慎!不管对公司或其它怎么样?但一定要对自己写的每一行代码负责;要多去思考为啥之前没有日志?所以要谨慎!公司并没有奖惩措施,努力工作也没什么奖励,犯错也不会狠狠批评或扣工资之类的,不知道这样是好是坏?

   2、谦虚学习!还有很多东西要学习!一定要谦虚学习!之前犯错可能会选择逃避,但这次很勇敢发邮件承认错误说明原因!

    最后,希望对大家能有帮助,大家加油!

 

因我而起的生产事故

标签:原因   事故原因   工资   没有   方法   加油   总结   一行代码   事故   

原文地址:https://www.cnblogs.com/liudw-0215/p/10309265.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!