Chinaunix首页 | 论坛 | 博客
  • 博客访问: 371561
  • 博文数量: 273
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1430
  • 用 户 组: 普通用户
  • 注册时间: 2018-02-02 15:57
文章分类

全部博文(273)

文章存档

2018年(273)

我的朋友

分类: Web开发

2018-07-11 15:34:16

无论你是初级工程师,中级工程师,高级工程师,甚至是全栈工程师、架构师,都是从零开使一步一步走出来的,想必都会犯过一些低级错误。

那些错误都是怎么发生的,如何避免发生错误呢,看看我们各位资深的程序员以自身为例,告诫我们敬畏每一段代码

开发权限管理很重要,谨慎对待手中的权限

云栖社区开发者海阔天空yy:曾经经我做过SQL SERVER数据库存储过程程序员。
当时我们每个人本地都有一套测试环境,所以测试的时候都是在本地测试。由于测试数据比较乱,比较多,为了更清楚的看清结果,我会经常TRUNCATE TABLE,写到这里大家可能基本猜出来了。没错!在线上出问题时,由于SQL SERVER 查询分析器可以同时开多个数据库连接窗口,我把线上数据库的窗口和线下数据库的窗口弄混了...所以,线上数据库的一张主要表,被我TRUNCATE TABLE了。。。当时刚执行完,过了1分钟我反映过来了,头脑一片空白。。。没办法,只能反映给了主管,主管听到后难得得没说我什么,马上找相关人员去处理。。。经过了大约1个小时后,原来的数据总算恢复了,但也导致了这个业务1个小时不能用。。。我都不知道我那1个小时是怎么过来的,坐在那里,动也不敢动,搞程序也搞不下去,就在网上搜如何恢复数据,话说当时我都准备好公司把我开了的准备了。

最后结果是,技术总监批评了我们主管,要求部门整改,线上环境严格控制,必须由他把关。
之后主管也找我谈了话,当然批评是少不了的,作为事故,还是罚了500块钱主管罚了1000。
要知道,当时我工资才3500。当时没被开除就算烧高香了吧。。。

事后总结起来,其实这主要还是部门管理方面的问题,我刚入职不久的人就能随便接触生产环境,并且还有很高的权限,这才是最大的隐患。当然个人也有问题,工作再忙也不要急躁,特别是你还在生产环境操作。要慎之又慎。

一定不能隐瞒或甩锅,以解决问题为前提,之后再去review

云栖社区开发者yolo_omg:在写RPC框架的时候,写了很多bug,在这里分享一个比较严重的:客户端连接断开清除请求数据时抛了ConcurrentModificationException,导致连接关闭异常,恰巧又碰到集团要做断网演练,接着就是1个星期内推动全网升级,拉了很多丁丁群,发了很多红包,还好没有触发线上故障。导致后面写if else都要double check了,比如1+1是否等于2,都要写UT进行验证了,然后拉着小伙伴review代码。


阅读(813) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~