首页 > 代码库 > Biztalk 之 Hosts And Host Instrances

Biztalk 之 Hosts And Host Instrances

Hosts AndHost Instrances

    对于Biztalk来说每一个BiztalkGroup,都可以创建多个主机。创建一个Host就相当于创建一个逻辑容器,里面有很多的Biztalk的任务在运行。

Hosts可以分为In-ProcessIsolated(也就是可以分为进程内主机和进程外主机)。

通常In-Process主机大量使用在Biztalk中,其实所有的tasks都运行在Biztalk-Process中,但是这个服务是Windows-Service

Isolated主机是指外部应用使用而非biztalk。例如IIS自己处理请求消息时使用独立主机。

当然以下的几个Adapters基本上都是用Isolated主机

  • HTTP Receive

  • SOAP Receive

  • WCF-BasicHttp Receive

  • WCF-CustomeIsolated Receive

  • WCF-WebHttp Receive

  • WCF-WSHttp Receive

Creatinga Host

创建的画面如下:

技术分享

技术分享

然后我们详细描述一下有关主机在创建过程中的每一个设置选项的意义。

Name:首先名字是比较重要的,当把Biztalk application从一个环境迁往另一个环境的时候两个环境中的Host Name 必须是一样的。

Type在这里选择In-Process或者Isolated

AllowHost Tracking如何在主机中选择了这个选项,那么该主机的主机实例将进行跟踪

AuthenticationTrusted如果一个主机选择了身份验证那么该主机在开始运行的时候就会进行身份验证如果验证失败该应用程式将不会运行。

32-Bitonly该选项是默认选上的,表示该主机是一个32为的Process,如果不选择就表示该主机是64位的。

WindowsGroup:这个Group要选择Biztalk application Users这个组,因为这个组里的用户能够访问MessageBox


Create aHost Instance

一个主机实例的创建意味着创建一个Windowsservice

AdaptersHandlers

其中Adapters Handlers中可以设置他们自己的SendHandlersReceive Handlers的主机实例。

SettingUP And Managing Ports

Biztalk中我们有发送和接受这两个端口,Message通过接受端口进入,通过发送端口发出。

ReceivePorts

一个接受端口可以创建多个接受地址,一个端口可以从不同的地址获取数据,具体的创建方式省略,其中的设置和具体的配置步骤也省略。在这里主要详细讲解一下Error Threshold(错误阈值的设置)。

如果接受Messagelocation配置过程中有ErrorThreshold,这里要注意一下。假如说Receive location这里发生了一个错误,首先主机实例会往日志中写入警告。这时如果错误时间或者错误重试的次数达到了Error Threshold那么receive location将会变成Disable状态,并且它不会自动启动。这时它便会在日志中写出错误的信息。

SendPort States

  • Started:表示Send Port的状态是可用的,并且正常。

  • Stopped:表示发送端口已经和订阅者进行了匹配,被发送的Message已经在主机实例中排好了队列。但是直到发送端口的状态变成Started才会开始。

  • Unenlisted:发送端口在这个状态什么都不接受。

DynamicSend Ports

这里说动态发送端口和静态发送端口的区别,动态发送端口它的AdaptAddress都是不需要配置的,因为这种发送协议是在OrchestrationPipeline组件中有所设置所有他可以把Message发到各种地方而不需要进行手动配置。但是静态发送端口是需要手动进行配置的。

动态端口经常使用在SMTP(给对方发邮件),但是邮件的地址各种各样,所以经常用动态发送端口。

 


Biztalk 之 Hosts And Host Instrances