主动器模式

一、定义及问题背景:

主动器体系结构模式使事件驱动的应用程序能有效地多路分解和分配由于异步操作的完成而激活的服务请求,这样能获取并发所带来的好处。

异步接收和处理多个服务请求的事件驱动的应用程序。通常可以改善分布式系统中的事件驱动应用程序的性能。

二、解决方案:
应用服务分成两部分:异步执行的耗时长的操作和在这些操作完成后处理其结果的完成处理程序。

三、结构:
包过九个参与者
1.句柄。标识一个操作系统资源,该资源是异步操作的目标,或者是操作系统中的完成事件源。
2.异步操作。定义可以异步执行的操作。
3.完成处理程序。定义一个用于处理异步操作结果的接口。
4.具体完成处理程序。以一种与应用有关的方式处理异步操作的结果。
5.异步操作处理器。调用某一个句柄的异步操作并运行到结束,异步操作处理器产生相应的完成事件。跟进操作所针对的句柄,异步操作处理器将该完成事件插入到与句柄对应的完成事件队列中。
6.完成事件队列。当等待完成事件通过异步事件多路分解器删除时,保存完成事件。
7.异步事件多路分解器。能够阻塞等待完成事件队列中出现完成事件,删除完成事件并把它返回给调用者。
8.主动器。调用异步事件多路分解器将完成事件从队列中删除。向完成处理程序的钩子方法事件多路分解和分配完成事件。
9.启动程序。调用异步操作。可选择地作为具体完成处理程序。

时序图:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值