架构设计之运行架构

架构设计之运行架构

ID:43457861

大小:23.07 KB

页数:2页

时间:2019-10-02

架构设计之运行架构_第1页
架构设计之运行架构_第2页
资源描述:

《架构设计之运行架构》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、架构设计之运行架构运行架构=技术选型+控制流划分+同步关系运行架构(如图-1所示)关注进程、线程、中断服务程序等运行时控制流,以及相关的并发、同步、通信等问题。运行架构的设计(及其所依赖的物理架构设计)对运行期质量属性有重大影响,例如性能、可伸缩性、持续可用性和安全性等。图-1运行架构的设计内容运行架构和开发架构的关系:开发架构一般偏重程序包在编译时期的静态依赖关系,而运行架构关注这些程序运行起来之后形成的线程、进程、中断服务程序,以及它们引用的类实例、传递的数据。如果使用UML来描述架构的运行架构,则该视图的静态方面由包图、类图(其中主动类非常重要)和对象图(其中主动对象非

2、常重要)等来说明关键运行时概念的结构关系。动态方面由序列图、协作图等来说明关键交互机制。运行架构设计包含的核心设计任务是:并发技术选型、控制流划分、控制流间同步关系。【设计任务】一、并发技术选型控制流(ControlFlow)是一个在处理机上顺利执行的动作系列。在实践中,最常用于实现控制流的手段有3种:1、进程2、线程3、中断服务程序进程(Process)是重量级控制流,既是处理机资源的分配单位,又是其它计算机资源的分配单位。线程(Thread)是轻量级控制流,仅仅是处理机资源的分配单位。一个进程内可以包含多个线程,后者共享前者的资源;但处理机资源例外,线程是独立的处理机资源

3、的分配单位。实际上,中断服务程序(InterruptServiceRoutine,ISR)也是常见的控制流实现机制。当你没有OS的支持却要实现并发时,这更是必不可少。【设计任务】二、控制流划分确定引入哪些控制流,并没有固定不变的套路,但有几点考虑是必不可少的:1、物理架构中每个节点(node)之上,至少有一条控制流。2、为了实现节点(node)之间的通信,通常做法是引入一条控制流来专门负责。3、节点(node)是具有主动行为的设备,为其引入专门的控制流(例如中断服务程序)。4、在需求一级的描述中(例如用例规约中)就是并行或并发的,引入多条控制流。5、来自用户或外部系统的并发访

4、问,常要求后端服务支持多控制流。6、如果控制流关系复杂,可以考虑引入对其他控制流进行协调的控制流。【设计任务】三、控制流间同步关系一旦系统中存在不止一条控制流,就产生了附加的工作量。除了控制流的创建、销毁之外,还要进一步考虑:控制流之间的通信机制(例如共享内存或消息等)、同步关系,若有资源争用还要引入加锁机制。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。