架构是有生命力的

运维人员说:软件运行这么慢,架构太烂了!

开发人员说:代码这么难写,架构太不灵活了!

客户说:软件太不稳定了,架构有没有问题啊?

XXX说:YYY架构师太差劲了,怎么就没有设计出一个好架构?

在所有人看来,架构必须是完美的,对所有人感觉都是良好的,能够适应未来的种种变化,能够一劳永逸!

起初我也是这么认为的,但是老师告诉了我们一个新观点:

架构是有生命力的!

“架构是有生命的,是不断变化的。因此,设计架构不能只想着要考虑到所有的问题,设计出一个能够包容所有可能问题的架构,这几乎是不可能完成的任务。因为变化是绝对的,架构总是会修改,关键问题是何时修改?一定不能在系统问题频出、已经来不及补救的时候才去考虑修改,而要在潜伏的问题逐渐露出端倪之前展开行动。”

——FreeWheel CTO和联合创始人 于晶纯

亚马逊,MySpace(进行了6次架构重构),eBay,淘宝网,这些大型网站都是不断地对架构进行重构,对应用进行升级来应对业务发展的需要的。

所以,我们不能一味的去指责FT的架构如何差劲,MB的架构如何糟糕,公司的这些产品线都是逐渐发展起来的,功能是一点点增加起来的,在功能开发第一的市场战略下,架构成了次要考虑的问题,所以我们不能说当初的架构设计的不好,问题是在于功能增加了,应用变复杂了,而架构没有跟上变化。