作为电商公司,618,双11这样的日子,对测试和运维来说可能是最苦逼的了。比如今天早上我7点才下班,到家还能开车送孩子去幼儿园上学。
为什么苦逼?
因为要在生产环境通宵压测啊!我们是“小厂”有的东西还在完善中。本文就说说性能测试和实施方面的事情吧。
首先是环境问题。现在我们是本地开发环境,测试环境,预发布环境,生产环境。
开发环境给开发本地开发自测,调试;测试环境给测试伙伴,产品伙伴做功能测试;预发布环境做上线前的主干流程验证;生产环境和预发布环境共用数据库。
现在的环境,造成我们对重要环节的性能测试都要在生产环境做,才具备参考价值。但是作为电商来说,平时和晚上0-2点都是用户的高发期,要想在生产环境搞事情,几乎只能在凌晨2点以后进行,不然性能测试的时候服务器出现问题会造成很大的经济损失。
所以一到这种电商大促的日子,测试和运维就得叫苦不迭地通宵加班。兄弟公司也很多人抱怨,消费者的狂欢背后就是程序员最苦逼的日子。在发散一下,凌晨上线这种事情,互联网公司更是家常便饭。这样的恶性循环已经反反复复了许多年。
大厂又是怎么个情况呢?华为就不用说了,在华为就没有加班这么个说法,24小时都是工作时间,就没有“加班”这么一说。百度,就没有晚上九点以前下班的人。作为电商的领头羊,阿里其实做得很不错。2017年的时候,阿里已经做到了无人值守的性能测试。2017年双十一的时候,阿里已经能做到一边看双十一晚会,一边关注服务器各项数据了,2018年,阿里计划要做到无人值守发版,按我的预期,即便做不到100%无人值守发版,也能做到80%的无人值守。不得不感叹阿里的强大。
早上和运维的伙伴憧憬,今年的双十一应该是我们最后一次通宵压测了,明年我们也要做到无人值守的压测,一定不能让大家都苦逼。
怎么做呢?
首先是确定环境,我们规划,将会把测试环境单独隔离一块出来跟生产环境等比例缩小,并且定期清理脏数据,保证在测试环境实施的性能测试更具备说服力和参考性。
其次加强,日志收集系统的的完善,晚上自动进行性能测试以后,日志系统能够自动筛选出对应的日志,给白天工作的伙伴最准确的定位。
然后,从思想上抛弃临时抱佛脚的观念。不能临近双十一才开始做全站的性能测试,要把这次双十一到下次618当成一个完整的迭代周期来规划所有的产品迭代,拆散分散性能测试的环节,用迭代的思想来做性能测试。其实京东已经这么做了,我们只是向其学习而已。这需要领导层从上到下的支持,也得运营市场等部门的配合,没有这种长期的统筹规划,业务上就做不到支持,到时候还得苦逼的跟狗撵一样临近大促还通宵加班,然后还一堆改不完的bug.
END.
网友评论