Skip to content

浅谈《凤凰架构》

0. 自序

0.1 流水不腐,户枢不蠹

在软件工程里,任何产品的研发,如果持续时间很长,人总免不了疏忽、犯错,导致代码存在缺陷,电脑宕机崩溃,网络阻塞中断......如果一项工程需要大量的人员共同研发某个大规模的软件产品,并使其分布在网络中的大量服务器节点中同时运行,随着项目规模增大、运作时间变长,其必然会受到墨菲定律的无情打击。

为了得到高质量的软件产品,我们是应该把精力更多的集中在提升其中每一个员、过程、产出物的能力和质量上?还是应该把更多的精力放在整体流程和架构上? 其实这两者都很重要。前者重术,后者重道;前者更多与编码能力相关,后者更多与软件架构相关;前者主要由开发者个体的水平决定,后者主要由技术决策者的水平决定。

0.2 可靠的系统

如果一项工作要经过多个“不靠谱”的过程相互协作完成,其中的误差应会不断累积叠加,导致最终结果必然不能收敛稳定。 那么,如何用一些“不可靠”部件构造出一个可靠的系统? 以生命系统为例。生命系统之所以可靠,恰是因为它可以使用具体的零部件可能会崩溃消亡,但在存续生命的微生态系统中,其后代一定会出现,重新代替该零部件,实现它的作用,以维持系统的整体稳定。在这个微生态里,每一个部件都可以看作一只“凤凰”,它会老迈,又能涅槃重生。

0.3 架构的演进

待补充。

Released under the MIT License.