新闻动态

为什么优秀的工程师,都要关心代码性能?

网站优化 发布者:cya 2019-12-06 08:43 访问量:210

过去三十年,互联网江湖风云变幻。但无论技术如何迭代,互联网界都有一个亘古不变的追求——性能和效率

 
一些程序员,尤其是刚工作不久的程序员可能会觉得,自己写出来的代码只要没有 bug,就已经很好了,哪里还有精力去追求性能和效率?只有运维、测试、或者高级技术人员,才有学习性能优化的必要。
 
但其实,性能优化和容量效率对公司而言越来越重要,并且已经是每个程序员的必备加分项其中有三个原因:
 
首先,性能与容量效率影响着公司产品的生死
 
今天的互联网服务(尤其对大厂而言)有两个显著特点:大规模(大数据、用户多等)和高要求(低延迟、高吞吐等),这就必然要求服务的高性能和容量的高效率。不夸张地说,当今互联网,得性能者得天下你写的代码的性能,将直接影响产品的用户量和公司的运营成本。
 
第二,性能和容量效率每个技术和管理人员的进阶必备技能
 
想要进阶更高职位,每个互联网从业人员都需要具备这些知识。掌握了这些知识,开发工程师在开发软件时才能写出更高性能的代码;运维工程师才能懂得如何监测和提高系统的性能;测试工程师才可以通览软件测试的分类和方法;技术 leader 就能了解如何进行容量管理,提升服务效率并降低运营成本,等等。
 
第三,性能优化和容量效率会帮助延长“职业生命”,可越老越吃香
 
在硅谷的很多公司,负责性能优化和容量管理的工程师都由一些年龄较大,工作经验丰富的员工担任。因为他们足够有经验,能够帮助公司提升业务性能和容量效率,节省运营成本随着业务规模的扩展,公司也越来越离不开他们。国内也有同样的趋势。
 
但是,做好性能优化和容量效率工作并不容易。首先,虽然各种“性能测试”和“性能调优”相关的知识有很多,比如JVM调优、操作系统调优等,但是系统地介绍“性能工程”的资料却很少。其次,性能和容量效率的工作还需要各种软技能,这种学习和积累需要相当长的时间,如果没有前人引路,只靠自己慢慢摸索,不太可能高效进阶。

性能问题通常是复杂的,性能工程师可以类比成“医生”,二者解决问题的思路是一样的。下面这张图可以对比这两种场景。
              
 
可以看到,现实中解决问题的思路通常是:问题→测试→分析→优化→实践。
 
 




关键字:

http://m.chenzhankj.com/wzyh/635.html