架构师手册
根据具体情况不同,运行架构设计可能包括下列工作内容
控制流(Control Flow
)是一个在处理机上顺序执行的动作系列。确定引入哪些控制流,并没有固定不变的套路,但有几点考虑是必不可少:
node
)之上至少有一条控制流node
)之间的通信,通常做法是引入一条控制流来专门负责一旦系统中存在不止一条控制流,就产生了附近的工作量,例如控制流的创建、控制流的销毁、建立共享内存或消息等不同控制流之间的通信机制。
控制流图显示了系统中不同控制流之间的关系。控制流的起点是“主动单元”,它会调用其他“被动单元”……如此层层调用,就形成了一个控制流。明确了系统中所有的主动单元,就抓住了每个控制流的源头,从而可以把并发执行的所有控制流梳理清楚。
例如:
M
和N
两个模块可能需要加锁,因为M
模块的“入度”等于2,而N
是M
的下游模块。
运行架构设计的工作看似多而杂,但其实只要把握“控制流图”,就能提供提纲擎领的开展其他相关设计。