深入探索BizTalk Server:状态管理、事务处理与企业服务总线
1. BizTalk Server的状态管理
BizTalk Server在编排状态管理方面与WF有相似之处,但状态管理不具备可扩展性和可配置性。它始终将编排状态存储在SQL Server数据库中,以确保持久和可扩展的存储,这自然应用了状态存储库(State Repository [785])模式。
BizTalk运行时引擎会尽可能地对空闲的编排实例进行脱水操作,以节省服务器资源。编排引擎检测到编排空闲并等待一段时间后,会将编排持久化到SQL Server数据库中,并释放与该履行流程实例相关的服务器资源。当接收到针对编排实例的消息,表明是时候恢复处理时,BizTalk会对编排进行补水操作。为了实现这一点,BizTalk需要能够识别消息中可唯一标识要补水的编排实例的数据,通常会使用关联类型。
在编排处于活动状态时,它会保持有状态,直到执行完成。而由编排逻辑组成的服务,最好通过状态存储库 [785] 或其他模式(如状态服务 [786]、部分状态延迟 [759] 甚至状态消息传递 [784])来延迟状态。
要点总结 :
- 状态存储库 [785] 模式在BizTalk Server平台中固有应用,并以SQL Server数据库实现。
- BizTalk Server支持不同的状态管理和延迟架构及模式。
2. 补偿服务事务
BizTalk支持符合补偿服务事务 [724] 模式应用的补偿式事务。当编排的一部分失败,需要清理之前成功执行的工作时,通常需要调用补偿逻辑。
可以通过将S
超级会员免费看
订阅专栏 解锁全文
1

被折叠的 条评论
为什么被折叠?



