如何系统性地保障软件的性能
一个正在持续增加新功能的软件,尤其是类似QQ这种做为一个超大规模客户端软件,又随时需要适应用户要求和发展的需求,需要不断的做快速的更新,开 发节奏非常快。而且因为我们的用户是海量用户,用户的软硬件环境非常复杂。性能作为软件的用户第一体验,如何去系统性地保障软件的性能,对于QQ来说就变 得非常重要。 那么要让持续开发的软件的性能能够得到保障,应该做些什么呢? 1、需求阶段开始考虑性能 首先从需求提出阶段说起,需求提出阶段应该要开始考虑性能问题了,产品经理提出需求之前,必须要系统性地了解哪些因素会影响到软件的性能,这些因素包括 但不限于:需求的处理时机,需求的处理数量,需求的处理是否涉及大的IO,网络,以及CPU。尤其是在使用特性上要思考清楚,比如涉及到消息记录的需求, 可能要考虑到有的用户的消息记录很大,比如涉及好友列表的需求,可能要考虑到有的用户的好友列表很多等。 使用时机的话,比如需求是在登录过程中那么可能要考虑该需求是否会影响到登录速度,如果是在登录后的话,是否会造成登录后卡。 结合这些特征,对于一些从需求侧就可能有问题的需求,要么考虑直接不做这个需求,要么考虑针对不同...