做软件性能优化与写程序有一点不同。程序是否有bug很容易看的出来,对就是对,错就是错。而做性能优化与之则完全不同,速度快与慢没有一个完全的界限,我们也无法确定程序究竟能够达到有多快。
对于性能优化来讲,只能是尽人力。
在系统中影响程序性能的因素有很多,关于之间相互作用对系统性能的影响很少,而且大多分布在网络的各个地方。
做性能优化,需要了解很多软件实现的细节,在不明白很多细节的时候,如果在影响性能的众多因素中杀出一条路,是件很不容易的事情。
我的经验:
1、需要抓住每一个疑点,每一个不合理的地方,我们看到某个函数运行的慢一点。一般开发人员看看这个函数,感觉是慢疑点,但也不知道为什么这么慢,就轻易的放过去了。
做性能优化,就像是在侦查案件,找到一点线索不容易。因此发现一个线索,一定要深究,看清楚其为什么慢,这时背后往往有条大鱼。
2、多做测试,比较不同的方法,排除一个个可能影响系统性能的因素。
阅读(2772) | 评论(1) | 转发(0) |