清单:使用并行版本控制更新业务流程

对业务流程的更改比对其他项目(如地图)的更改更为复杂。 如果你有生存期较短的业务流程,那么简单的更新可能就足够了。 但是,如果你有长时间运行的业务流程或无法终止现有实例,则并行版本控制将是你唯一的选择。

当编排处理长时间运行的事务时,无法立刻切换到更新后的版本。 必须允许原始版本完成处理其消息,使其不会丢失。 为此,请将更新后的业务流程部署到与原始业务流程相同的应用程序中。 然后,您需要停止原始版本并启动更新的版本,以便它能接收所有新消息,而以前的版本则继续处理正在传输中的消息。 原始编排处理完所有消息后,将其从部署的 BizTalk 应用程序中取消部署。

步骤 参考文献
在对编排进行必要的更改后,递增程序集版本号。 如何更新程序集
将程序集从 Visual Studio 部署到 BizTalk 应用程序,然后测试程序集。 注意: 请确保选择部署选项以在 GAC 中安装程序集。 将 BizTalk 程序集从 Visual Studio 部署到 BizTalk 应用程序https://go.microsoft.com/fwlink/?LinkID=154719)。
将程序集从测试环境中的应用程序导出到 .msi 文件中。 如何将应用程序导出到 .msi 文件
将 .msi 文件导入到您的生产环境中的 BizTalk 应用程序,该应用程序中包含您要更新的编排。 注意: 可以使用以下步骤测试程序集并将其部署到生产环境。 如何从 .msi 文件导入应用程序
使用与原始编排相同的绑定来绑定更新的编排。 如何为业务流程配置绑定https://go.microsoft.com/fwlink/?LinkId=154850)。
取消注册原始编排流程,然后启动更新后的编排流程。 注意: 为了避免任何丢失的消息,应以编程方式进行此操作。 有关以编程方式部署业务流程的详细信息,请参阅 以编程方式部署和启动业务流程的新版本https://go.microsoft.com/fwlink/?LinkId=154851)。

有关手动部署业务流程的详细信息,请参阅 BizTalk Server 帮助中的以下内容:

- 如何注销一个业务编排https://go.microsoft.com/fwlink/?LinkId=154852)。
- 如何注册编排https://go.microsoft.com/fwlink/?LinkId=154853)。
- 如何启动编排https://go.microsoft.com/fwlink/?LinkId=154854)。
使用“组中心”页面查询视图监视原始编排版本实例的系统。 如何查看业务流程的实例信息https://go.microsoft.com/fwlink/?LinkId=154855)。
当其所有正在运行、已解除冻结和挂起的实例完成后,请从应用程序中卸载原始编排。 如何从应用程序中删除编排https://go.microsoft.com/fwlink/?LinkId=154856)。
(可选)从运行应用程序的每台计算机上的 GAC 中卸载原始程序集版本。 如何从 GAC 卸载程序集https://go.microsoft.com/fwlink/?LinkId=154857)。

绑定到接收端口和位置

如果要为新版本的编排创建新的接收端口和位置,通常只需绑定到新端口并登记/启动新组件就足够了。 创建新的接收位置和端口通常是首选方法,尤其是在方案使用长时间运行的业务流程时,仍需要处理许多关联接收。 在这种情况下,可能无法重复使用现有接收端口或执行取消登记。 如果创建新的端口,请确保后端和合作伙伴系统能够处理此更改。 如果没有,则必须等待所有长时间运行的实例在升级之前最终完成。

如果要使用现有端口,请执行以下作:

  1. 将编排的新版本绑定到现有端口。

  2. 取消注册(但不停止)旧编排版本。

  3. 注册并启动新的编排版本。

    注释

    可以使用脚本在一个事务中执行步骤 2 和 3,以便在手动单击之间不会漏掉订阅消息。