横向扩展接收主机

若要使接收主机高度可用,必须具有两台或更多台运行每个接收主机实例的BizTalk Server计算机。 通过横向扩展接收主机,可以增加消息传送密集型BizTalk Server部署的可用性。 尽管这些部署可能很少处理业务流程,但仍可快速和可靠地路由许多不同类型的消息。

通过将接收主机与处理业务流程和发送消息的主机分隔开来,您可增强您的环境的安全性和可伸缩性,因为可以独立于其他主机来保护和扩展每个主机。 例如,您可以将两台计算机(主机实例)添加到接收主机,而无需向处理主机或发送主机添加任何计算机。

了解 In-Process 和独立接收主机

BizTalk Server集成应用程序以提供业务服务。 集成通常表示为BizTalk Server接收来自应用程序) 的文档 (,处理文档,并将处理后的文档发送回应用程序或其他应用程序。 该过程称为文档事务。

事务通常从监视特定协议通道并接收文档的 BizTalk 适配器开始。 之所以之所以调用适配器,是因为它将其他应用程序连接到BizTalk Server。 根据其功能,它可以是发送适配器或接收适配器。 大多数默认适配器是一个 .NET 组件,其接收函数和 send 函数都内置于一个 .NET 程序集中。 根据适配器所在的进程内存空间,它是进程内 (接收) 适配器或独立 (接收) 适配器。 进程内适配器只能由BizTalk Server进程 (BTSNTSvc.exe) 托管,独立适配器设计为由另一个进程托管。 例如,HTTP 适配器和 SOAP 适配器由 Internet 信息服务 (IIS) 进程托管。 它们本质上是 ISAPI 扩展。 另一方面,所有发送适配器都是进程内适配器。

BizTalk Server配置将创建两个默认主机-进程内主机称为 BizTalkServerApplication,独立主机称为 BizTalkServerIsolatedHost。 主机提供两个函数:一个是逻辑上对BizTalk Server项进行分组,以便这些项可以分配给不同的BizTalk Server进程,另一个是控制安全性。 需要为主机指定 Windows 组。 只有此组中的用户才能将文档发送到分配给此主机的 主机实例 托管的适配器。

两个默认主机中的每个主机都有一个主机实例。 主机实例没有名称,但与主机相关联。 BizTalkServerApplication 主机实例实际上是 BizTalk 组中BizTalk Server计算机上的BizTalk Server服务进程 (BTSNTSvc.exe) 。 BizTalkServerIsolatedHost 主机实例未直接绑定到进程。 它与承载接收适配器的进程相关联。

BizTalk Server配置还会为每个默认适配器创建接收处理程序,SMTP (SMTP 是发送适配器) 。 接收处理程序属性之一是主机名。 这就是它绑定到主机和该主机的主机实例的方式。

除了适配器、主机、主机实例和接收处理程序外,还需要配置接收端口,BizTalk Server才能开始接收文档。 接收端口包含接收位置。 接收位置具有接收处理程序属性。 按照逻辑,可以跟踪处理此接收端口的BizTalk Server进程。

在接收端口配置中,可以选择指定映射。 在接收位置配置中,必须指定用于文档预处理的管道。 指定的BizTalk Server进程处理从接收文档到预处理文档到映射文档的所有内容。 对于进程内主机实例和独立主机实例,这都是相同的。

向外扩展 In-Process 接收主机

下图显示了一个BizTalk Server部署,该部署通过将两个主机实例分别位于不同的计算机上来为接收主机提供高可用性。 请注意,在此图中,处理和发送主机不是高度可用的,因为只有一个主机实例处理分配给主机的 BizTalk 项。

用于接收消息TDI_HA_ScaleReceive的多个主机

在进行大型部署、与多个贸易合作伙伴打交道以及使用不同的协议时,您可以采用多个接收主机来分担接收功能。 例如,您可以创建一个主机来接收每个适配器的消息,也可以创建不同主机来接收来自不同合作伙伴的消息。 在创建多个接收主机后,您可以创建安全边界来提高您的环境的可管理性和可伸缩性;但是,这并不能确保环境高度可用。 为确保环境高度可用,您必须为创建的每个接收主机创建两个或更多主机实例。 例如,可以创建三个不同的接收主机, (A、B 和 C) 接收来自三家不同公司的消息。 为确保所有这些主机高度可用,随后还需要在两台或更多计算机中创建所有这些主机的实例。 请注意,您可以在一台计算机上创建每个主机的实例,而不会影响安全边界、可管理性或可伸缩性。

下图显示了具有三台计算机的高度可用的 BizTalk Server 环境(其中不同的主机专用于接收来自不同公司的消息):

横向扩展接收主机

为确保此配置的高可用性,每台计算机都运行三个主机实例:三家公司中的每一个家都对应一个实例。 每家公司的主机实例都包含用来与该公司进行通信的接收位置和管道。 在典型操作期间,只要在接收适配器前完成横向扩展的必要工作,消息负载就分布在每个主机的三个主机实例中。 如果一台计算机上的主机实例失败,则在其他两台计算机上运行的主机实例将提供冗余,以保持服务可用。

横向扩展独立接收主机

除了主机实例外,缩放和为接收主机提供高可用性的过程还取决于部署中实现的特定适配器。 每个适配器都具有与协议有关的特性,所以在协议不同的情况下规划和部署也会有所不同。 但是,BizTalk Server允许对所有适配器(主要通过其他计算机和主机实例)应用相同的高可用性解决方案。

根据所用的具体协议,某些接收适配器需要采用在多台主机计算机中分布传入消息的附加机制,才能确保高可用性。 例如,使用 HTTP 或 SOAP 适配器 (又称为 Web 服务适配器) BizTalk Server解决方案需要负载均衡器(如网络负载均衡 (NLB) )来分发接收工作负载,如下图所示。

横向扩展隔离接收主机

有关 BizTalk Server 中最常见适配器的高可用性指南的详细信息,请参阅 BizTalk Server 帮助中的“缩放BizTalk Server接收主机 (https://go.microsoft.com/fwlink/?LinkId=151283) ”部分。

另请参阅

群集接收主机横向扩展处理主机横向扩展发送主机