如何组织同一组中多个biztalk应用程序引用的公共模式?

时间:2009-05-14 23:07:25

标签: schema biztalk

我有一种情况需要在两个不同的BizTalk应用程序中引用模式。

我可以:

将架构放在一个应用程序中,并让其他应用程序引用它。

OR

将架构放在一个通用应用程序中,所有其他应用程序都引用这个常见的应用程序。

但是,在上述两种情况下,如果对架构进行任何更改,我最终都必须重建/重新部署所有引用了schemal的应用程序。有没有更好的组织应用程序的方法?

3 个答案:

答案 0 :(得分:4)

来自Microsoft Biztalk Operations Guide

  

在单独的应用程序中部署共享工件 - 如果工件将由两个或多个应用程序共享,请将共享工件部署到单独的应用程序中。例如,如果两个应用程序共享架构,请将架构放在单独的应用程序中。我们建议这样做,因为BizTalk组中只有一个工件可以具有单个本地唯一标识符(LUID)。 LUID由工件名称和可选的其他属性组成。如果在一个应用程序中包含工件,然后从另一个应用程序创建对它的引用,则在停止包含工件的应用程序时,引用应用程序可能无法正常工作。   此最佳实践适用于除文件之外的所有工件类型,例如自述文件和脚本,这些文件作为工件的文件类型添加到应用程序中。这是因为可以在BizTalk组中部署多个具有相同名称的文件工件。因此,您可以在两个或多个应用程序中使用具有相同名称的文件。在这种情况下,停止一个应用程序不会影响其他应用程序。有关添加文件工件的详细信息,请参阅http://go.microsoft.com/fwlink/?LinkId=106818处的BizTalk Server 2006 R2帮助中的“如何将文件添加到应用程序”。

共享应用程序中的模式确实不应该因为它们被共享而改变,这是一个重大事件。如果要添加模式或修改现有映射,则无需重建旧应用程序。您可能必须回收依赖的主机实例,以使它们刷新其内存中的dll副本。否则应该95%无忧无虑。

答案 1 :(得分:1)

我们将常用架构和功能放在一个单独的应用程序中。

答案 2 :(得分:0)

我不确定我是否理解你的问题,所以如果我不在基地,请纠正我。

您应该将模式组织为自己的程序集,可以将其独立部署到需要它的所有应用程序。然后,它们可以在开发期间被其他项目引用。部署后,如果对模式进行了更改;架构程序集只需要在服务器上更新;将保留对应用程序中模式的引用。

希望这会有所帮助。