孙建/前事不忘,后事之师

Created Fri, 12 Aug 2022 19:19:02 +0800 Modified Thu, 13 Oct 2022 16:28:56 +0800
1071 Words

前事不忘,后事之师

  今天客户端程序突然搜不到设备了,看了一眼Log,Arp返回错误,下意识的去改网关,然后好使了。其实自己不懂网络,也说不清是怎么突然想到的。

  之前还有两个别人的问题,一个是C++程序收数据异常崩溃,怎么打Log都定位不到问题,第一时间猜内存对象存储了过大的数据崩掉了,果然如此。

  还有某一天在客户电脑上,我们写的Wifi控制模块突然不管用了。在查代码, 查日志之前, 我又下意识搜索了一下Win10系统更新日志,果然在没什么人访问的官网上,有人反映了最近一次更新后Wifi热点模块失效,Windows工程师随后给了解决方案,这次又节约了排查时间了。

  看似解决问题快,其实还是被坑多了的后遗症。

  在老东家那时候,动不动就有人找我说"孙工啊,工具又不好使了"。然后发现至少50%的问题都是Ip填错了,掩码填错了,网关填错了。

  这时候想起自己曾经深恶痛绝的日式繁琐文档的可贵之处了,它不会告诉你网关设成192.168.1.1,而是告诉你点这个按钮,会出现什么界面,再点这个按钮,会出现什么界面。看到这个第三个框没,填成跟文档一样的数。

  年轻的时候我非常自负,有写这文档的功夫能写多少代码了,随后的岁月打了我的脸。比如今天,由于之前配置客户端没留文档,我们把上一台电脑的坑又踩了一遍,浪费的时间足以写一个迷你的go服务器了。

  还有内存暴涨问题,我职业生涯的第一站就是去东软汽电写一个数据转发程序,然后每次联调的时候都崩在我这里,简直颜面扫地,我打遍Log也查不出来。还是我导师告诉我,你那个低效的生产消费模型,每次收15M数据发10M,慢慢的你的缓存队列就暴涨了,然后在惊动了系统的情况下悄无声息的就被kill了,由于联调阶段大部分都是对接Bug,所以年轻的你是不会想到这里的。最后用一手共享内存加固定缓冲解决问题,令我佩服的惊为天人。当年导师每次发工资就去买奶粉,现在我也到了这个年纪了,开始给别人讲蓄水池问题了,真是岁月不饶人。

  最后那个问题,在海天,突然在现场的某台电脑上,文件下载不好使了。后来发现这个小伙用的是Win10,还开启自动更新,这在Xp和Win7横行的铁路系统十分难得。在浪费了大量时间排查代码之后,我们才发现是Win10的某次更新把默认开启的Samba服务改为默认关了。

  数年后我告诉同事们先查Win10更新记录时大家都莫名其妙,只有我想起了那个曾经被坑的不堪回首的一周。

  有时候我就在想,看似年轻员工比老员工更能加班,但是有经验的老员工会尽量不让自己落入不得不加班的境地,无论靠经验丰富,代码娴熟,或者单纯跑的快。