● 分发模式:需要将消息采用同步方式向其它多个部件进行分发,待消息收齐后才能决定自身的最终状态。例:被测对象通过分发部件将数据同步分发给不同的部件。需要说明的是:图示中的分发部件,这时从物理上来说,可能看到的只是一个部件,由它统一接受和分发消息,但从逻辑上来说,它是代表了不同部件的接口处理的。
对于分发模式一般也是基于事务、有状态的,但由于涉及到了2 个以上的周边部件,还需要考虑对不同部件的接口消息处理结果进行结合。
以图示为例,被测对象的验证内容一般包括:
◇ 对A 接口的验证。(参见C 模式)
◇ 对B 接口的验证。(参见C 模式)
◇ 对部件1 和部件2 处理结果结合验证:
条件:1 成功2 成功;1 成功2 失败;1 失败2 成功;1 失败2 失败
结果:被测对象的状态、数据
● 异步分发模式:即采用异步方式进行消息分发,为异步和分发模式的结合。比较典型的是数据同步异步接口。被测对象 通过分发部件 同时将数据同步消息通知分发给不同的部件,各个不同部件收到通知后再向被测对象请求获取同步数据。如果通知有优先级,例:部件1> 部件2,待部件1 处理完再通知部件2,即为异步分发模式1。如果多个部件的分发并行执行(一般来说,部件1 和部件2 可能代表的是同类部件的不同物理实例),即为异步分发模式2。