应用上线 问题百出怎么办?

      现在所有的公司都知道,要小步快跑,快速迭代,所以应用功能开发完成,测试完成就忙不迭的发布,抢发布时间,配合宣传时间,抢审核时间。可由于开发人员良莠不齐,上线流程不规范等等经常会出现各种各样问题,临门一脚搞得焦头烂额。

      尤其对于移动客户端,发出去就覆水难收,如果淡出是服务器问题还好说,可如果是客户端有问题那就只能等下个版本发布的时候了,再此期间要面对被客户投诉,被同行鄙视的风险,尽管自己事实上已经开发的很完美了,可落实到程序上就是一个字,“烂”。不能让客户满意,不能让老板满意。

      怎么做好这临门一脚呢,我来说下我的看法。

      上线时为什么会出这么多问题呢?

      第一, 代码问题,一般来说就是合入代码不全,随着开发和测试的不断进行,一次上线往往伴随着很多的文件修改和配置文件(项)的增多,上线时,时间紧迫加上线人员不熟悉,上线文件清单准备不全等等,会导致上线代码有遗漏,上线之后的测试往往时间比较紧,不能覆盖全面,导致此类问题的出现。

      第二,测试问题,并不是说测试人员不给力,关键就出现在测试数据不够全面的问题上,很多的测试都是一些测试人员自己添加的测试数据,还有一部分是从线上扒下来的数据然后又更改的数据,这类数据 首先是 太少,不能全面覆盖生产环境的数据,还有,数据格式不一定,举个例子,十个人一百个想法,同样一个输入框不同的人输入的内容是截然不一样的。开发人员和测试人员能想到的问题必然有限。

      第三,产品设计问题,产品设计时考虑不够周全,比如输入框长度的限定,比如图片尺寸的限定,比如输入格式的限定。举个例子,我们一般要求收获地址就两行三行差不多了,可我从线上发现一MM的地址有70几个汉字之多,3行装不下,关键是还真有这个地方,人家输入地址进去死活就是看不到后面的门牌号,-_-!

      怎么解决此类问题呢?

      加一个预发布阶段,最短一天,最优三天。

     怎么预发布呢?

     有条件的话准备一台服务器单独做预发布服务器,若没有可以从线上服务器组里摘一台机器下来。合入代码,让测试人员进行测试,

     预发布的好处?

     1 使用的是线上数据,避免数据不一致引发的问题,

     2 有时间发现文件上线不全可以及时上线。

     3 预发布没问题后直接从预发布机器部署代码到机群,减少手工干预

     

 

     这是我对 应用上线容易出错这个问题的一些思考和实践,欢迎大家讨论。

  

 

 

 

    

应用上线 问题百出怎么办?

上一篇:Velocity是如何工作的


下一篇:线程控制之线程属性