MISA又给我们上系统架构的课程了,呵呵。
今天直接切入系统架构的基本,让我们这种门外汉有点措手不及。
1.(混乱度)熵:碰撞,关联。即质子的内部结构和运动。
一切的事务如何减少熵值:a.减少数据,b.减低指数。
内部系统边界如何减少熵值:a.隔离,b,沟通,c.稳定
熵作为一种物理学中的名字,在计算机结构学中得到了很好的表现。一个软件如何减少熵值但又不减低需求,如何让各个模块之间能单独运行又不干扰其他模块则是我们一直努力的目标。
边界,是因为隔离熵而产生的界限,好的边界可以让熵值减低稳定,反之则不然。
3种边界:a.平行边界,b.层次边界,c.包容边界.
A.平行边界:关联但无所属。比如CS模式,必须做到Client端和Server端互不所属,少了谁都可以单独运行。
平行边界可以做到全隔离,即几个模块之间都是独立的。
B.层次边界:底一层效率一定比上一层效率高,任何一层都是可以剥离的。如果做不到底一层的效率比上一层效率高,那这个系统就没意义了,也走入了误区。各个层次之间应该知道自己的功能和需求。
C.包容边界:功能区不可渗透,保证边界的完整。
哎,理解能力和表达能力有限,只能写这么多了。另外说点设计模式和系统架构的本质区别:
设计模式是从应用往下看,更多的则是从用户的角度考虑分析解决问题;而系统架构是从系统往上看,从整体上分析。但是你做一件事情的时候,如果直觉告诉你不对,基本上你现在做到的部分是错误的,你应该及时思考,是哪里不对然后进行正确的隔离,不要等到熵值无法控制的时候再修补,这样只会让你消磨更加时间但是熵值却提升。要懂得隔离,事先分析好事务的各个边界,分析出好的系统架构,会让各个模块简单很多。