对业务流程的更改比对其他项目(如地图)的更改更为复杂。 如果你有生存期较短的业务流程,那么简单的更新可能就足够了。 但是,如果你有长时间运行的业务流程或无法终止现有实例,则并行版本控制将是你唯一的选择。
当编排处理长时间运行的事务时,无法立刻切换到更新后的版本。 必须允许原始版本完成处理其消息,使其不会丢失。 为此,请将更新后的业务流程部署到与原始业务流程相同的应用程序中。 然后,您需要停止原始版本并启动更新的版本,以便它能接收所有新消息,而以前的版本则继续处理正在传输中的消息。 原始编排处理完所有消息后,将其从部署的 BizTalk 应用程序中取消部署。
绑定到接收端口和位置
如果要为新版本的编排创建新的接收端口和位置,通常只需绑定到新端口并登记/启动新组件就足够了。 创建新的接收位置和端口通常是首选方法,尤其是在方案使用长时间运行的业务流程时,仍需要处理许多关联接收。 在这种情况下,可能无法重复使用现有接收端口或执行取消登记。 如果创建新的端口,请确保后端和合作伙伴系统能够处理此更改。 如果没有,则必须等待所有长时间运行的实例在升级之前最终完成。
如果要使用现有端口,请执行以下作:
将编排的新版本绑定到现有端口。
取消注册(但不停止)旧编排版本。
注册并启动新的编排版本。
注释
可以使用脚本在一个事务中执行步骤 2 和 3,以便在手动单击之间不会漏掉订阅消息。