1

在我们开发架构编排、端口等期间。我们一直在导出 MSI 和绑定文件以部署到我们的测试环境和最终的生产环境中

因此,例如,我们在单个 BizTalk 应用程序中设置了一系列接收端口/位置,目的是接收来自 HCIS 的所有 HL7 v2 消息。然后我们将它导出到一个绑定文件,并导入到 test.xml 中。

然后,当我们开发新架构时,我们将每个架构导出到它自己的 msi 文件中,并将其部署到我们测试环境中的同一个 BizTalk 应用程序中。我们这样做是因为模式特定于来自我们 HCIS 的入站消息。

所以现在,在测试中,我们最终得到了一个 BizTalk 应用程序,其中包含我们需要从 HCIS 接收消息的接收端口和架构。我发现的问题是,如果我查看控制面板中的已安装程序列表,我只会看到 1 个应用程序。因此,如果我想卸载并重新安装特定架构,我不确定会发生什么。出于某种原因,我有一半希望看到我安装的每个 msi 的条目,但我想因为它们都进入同一个 BizTalk 应用程序,所以它们都在 Windows 中注册为同一个应用程序。我打赌有更好的方法来做到这一点,有什么建议吗?

4

2 回答 2

0

您可以并且可能应该为每个逻辑代码分组创建不同的应用程序。如果您检查项目属性的“部署”部分,您将看到一个输入应用程序名称的文本框。当您触发部署时,它们将被放置到具有您提供的名称的单独应用程序中。您将在 BizTalk 管理控制台中看到它。

我们使用下面提到的框架部署到 dev。然后部署到 QA 右键单击​​应用程序并从该点创建一个 MSI。它将只允许为一个应用程序创建 MSI。

注意:部署设置不会全局保存。如果其他开发人员打开该项目,他的项目将不会继承您设置的应用程序名称。

我们在进行开发时使用biztalk 部署框架来帮助管理变更。

于 2013-03-09T18:33:42.243 回答
0

所以现在,在测试中,我们最终得到了一个 BizTalk 应用程序,其中包含我们需要从 HCIS 接收消息的接收端口和架构。我发现的问题是,如果我查看控制面板中的已安装程序列表,我只会看到 1 个应用程序。

我只能想到两种情况,您可能会观察到这种行为:

  • 您有多个不同的 MSI(每个架构一次),您正在导入 BizTalk(因此它们出现在 BizTalk 管理控制台中),但您没有在本地计算机上运行 MSI(因此它没有出现在 '已安装的程序');或者
  • 您的 MSI 的名称都相同,在这种情况下,在导入 BizTalk 并进行本地安装后,您在“已安装程序”中只有一个程序可见。

我打赌有更好的方法来做到这一点,有什么建议吗?

关于方法,您当然是正确的。我倾向于建议客户将逻辑工件分组到单个逻辑存储桶中——项目或应用程序——可以部署(和重新部署)而不影响系统的其他部分。

在 HL7 场景中,一个逻辑桶可能是患者工件(模式和支持图),第二个可能是财务工件(模式和支持图)。这些逻辑存储桶可以部署到不同的 BizTalk 应用程序,也可以部署到同一个 BizTalk 应用程序,具体取决于您的要求。但是,这里的主要好处是它们是独立的,因此如果您需要对 A19 - 例如患者查询/响应模式进行小幅修改,则不需要重新部署所有工件。

如何部署完全是另一个问题。我是 MSBuild 的忠实拥护者,我编写了全面的构建脚本,我会针对我从事的每个项目进行调整和重用。这些部署脚本将拆除现有环境并从头开始重新构建,创建应用程序,部署资源,导入绑定,创建主机和主机实例等,然后最终启动应用程序。这种方法消除了流程中的所有人为错误,并且往往受到经常让基础架构团队而不是开发团队执行部署的客户的青睐。

我注意到 Jay 提到了 BizTalk 部署框架的使用。我个人在使用这个工具时遇到了困难,部分原因是我需要在 Excel 中维护我的配置,而我无法轻松地签入源代码管理。

于 2013-03-13T10:25:44.673 回答