Laws of Performant Software

link: http://tagide.com/blog/advice/laws-of-peformant-software/

程序员的性能意识,远比选择什么样的编程语言重要。主流的程序设计语言和库都已经被充分优化了,但是高级程序设计语言总会添加一些语法糖或者是提供一些fancy的功能。如果你对这些语法糖或者fancy功能的cost没有了解的话,那么很容易就写出性能低下的代码。因此对于这些语法糖或者是fancy功能,一定要弄清楚背后是怎么工作的。

细节决定成败。索性的是,大部分性能问题都集中于很少一部分代码,而high-level语言可以很容易地重构掉这段代码。

控制资源使用

性能改进要做多做实验,多做profiling.

几个坏东西凑在一起并不意味着好,分布式不一定就不单机要能解决问题。可以看这篇文章 Scalability! But at what COST?