IT培训-高端面授IT培训机构
云和教育:云和数据集团高端IT职业教育品牌 全国咨询热线:0371-67988003
课程 请选择课程
    校区 请选择校区
      • 华为
        授权培训中心
      • 腾讯云
        一级认证培训中心
      • 百度营销大学
        豫陕深授权运营中心
      • Oracle甲骨文
        OAEP中心
      • Microsoft Azure
        微软云合作伙伴
      • Unity公司
        战略合作伙伴
      • 普华基础软件
        战略合作伙伴
      • 新开普(股票代码300248)
        旗下丹诚开普投资
      • 中国互联网百强企业锐之旗
        旗下锐旗资本投资

      美团出现大面积系统崩溃,为了找BUG,JAVA培训班的学员们吵翻了!

      • 发布时间:
        2017-12-09
      • 版权所有:
        云和教育
      • 分享:

      最近公司食堂的饭菜真是吃够了

      于是昨天中午灵机一动

      准备点个外卖开心一下

      打开美团选餐后

      支付一次……失败!

      于是我再支付一次,然后……

      美团竟然扣了我两次款!!!

      美团出现大面积系统崩溃,为了找BUG,JAVA班的学员们吵翻了!

      这?是怎么肥事?

      不行,我要给美团客服打电话投诉!

      一拨过去!我的天!它竟然一直在占线!

      美团出现大面积系统崩溃,为了找BUG,JAVA班的学员们吵翻了!

      实在忍受不了了

      我要发个微博发泄一下并@它们官微

      打开微博一看

      原来美团出大事了!

      美团出现大面积系统崩溃,为了找BUG,JAVA班的学员们吵翻了!

      美团微博已被千万网友占领↓↓↓

      美团出现大面积系统崩溃,为了找BUG,JAVA班的学员们吵翻了!

      原来美团服务器出现大面积崩溃,包括外卖、团购在内的业务均受到影响。外卖订单付款出现延迟,部分用户付款后系统仍提示尚未付款;团购页面内容也无法正常显示。

      对于这个问题,美团外卖公开回应称,非常抱歉给大家带来了不便,因受系统网络影响,导致部分用户会出现重复支付情况,技术人员正在紧急处理,请大家先别着急,重复支付的款项会为大家原路退回,款项会在1-7个工作日内到账。

      影响了吃中午饭,这样的回应显然没有平复广大用户的心情,有用户爆料称,从2014-2017年美团一直在崩溃,从未被完全修复,就拿最近来说,8月和10月都出现过一次。

      对此,不少网友调侃:年终奖拿不到不说,这次美团的程序员可能要被炒鱿鱼了!

      网友评论:

      @lxl:美团的程序员这一年白干了

      @MR无尾熊:用户气死了,饿了么笑死了,美团哭死了,程序员……没了

      @强行插入:程序员要被祭天了

      @HEQQ:永远不要小瞧一个饭点儿上饿晕网友的能量!

      @诸葛亮:我就知道我的午餐没了,是美团程序员背锅,作为程序猿,我很理解

      @风鸟一群:肯定不是小bug引起的,太瞧不起美团了。如果是网络/服务架构问题,美团这次算是有了非常宝贵的经验。

      @差不多KK:吓的我赶紧藏好写好的bug

      其实,从每天给程序员打交道的小编的角度看,把全部责任归咎到美团程序员的身上并不公平,要知道程序员身上承受的压力该有多大呀!

      再说了,哪个程序员能保证,写过的代码里一个bug也没有?其实,程序员工作的最大意义就是不停地寻找bug,战胜bug啊,正所谓“程序不息,Bug不止”。

      出现的bug都是程序员哪些错误造成的?

      此次美团大面积崩溃事件,也在云和数据的JAVA班和PHP班引发了大讨论,在云和数据JAVA班资深讲师李老师看来,bug的出现一般是由程序员的代码错误造成的。

      那么,程序员在写代码时一般会犯哪些错误呢?李老师总结了以下几点:

      1 缺少必要的注释

      大段的if-else缺少注释,让维护者无法快速分辨分支逻辑。特定地方存在hack或复杂逻辑的代码,缺少注释会让后来者不明所以。为了你好,也为了后来者好,请务必加上代码。说不准以后还是由你来维护这段代码。

      2 不变和变化的部分拆分

      程序员中流传着一句话,此处不要写死,将来必改。有经验的程序员会将一些业务层的逻辑抽象出来,写成配置文件,好处就是若后续需求有改变,只需改配置文件即可,肯定不会引入bug。

      3 忽视测试部分

      程序员中又流传着一句话,没有测试的代码等于没写。虽不敢全部赞同,却也有几分道理。从测试用例驱动开发,持续集成,每次编译自动跑测试用例,能够保证系统的稳定同时也减轻测试成本。自己改的的部分做好自测,理解需求,做一个有责任心的工程师。

      4 直接操作数据

      你应该通过方法去操作数据,而不是直接操作数据,这样能够保证你总能操作数据正确。例如一个类中定义的属性发生变化了,代码中所有涉及到直接操作该属性的代码都需要修改。如果通过方法操作该属性,则仅需修改操作方法,对于外部调用者,类属性变化被屏蔽了,遵循了解耦的原则,代码稳定性大大提高。

      5 缺乏文档或文档质量低下

      前期文档很重要,不论是框架的API使用手册,还是需求或设计文档,以及各种既定流程的规范,不同种类的模板及核对表,等等这些文档,对于项目来说都是非常重要的资源。而往往有些项目,这类文档就是交由非软件行业的人员来编写,或者前期根本不打算在文档上浪费时间。

      程序员都是怎样找到bug的?

      对于一名程序员来说,尤其是编程初学者,如何在复杂代码中找到bug,是一种能力的考验。

      关于如何找bug,云和数据JAVA班的学员们引发了一场大讨论,看看他们有哪些自己独到的方法:

      美团出现大面积系统崩溃,为了找BUG,JAVA班的学员们吵翻了!