BizTalk开发系列(三十五) TCP/IP 适配器

  BizTalk 的TCP/IP适配器最初是为英国的保健行业开发。该适配器属于BizTalk进程内适配器,将消息通过TCP/IP 套接字符串在BizTalk服务器与远程客户端间进行通讯。

TCP/IP适配器支持以下几种交互模式:

  • Request Only 消息被发送到BizTalk并路由到任何流程(Orchestration)或发送端口。
  • Request-Response 消息被发送到BizTalk并接收从BizTalk返回的远端服务器的返回信息。
  • Solicit Only 消息从BizTalk发送到远端服务器。
  • Solicit-Response  消息从BizTalk发送到远端服务器,并接收远端服务器的返回信息。
  • Dynamic Solicit 动态发送。
  • Duplex Request 客户端的全双工请求。
  • Duplex Solicit BizTalk的全双工请求。

使用前的准备与安装

  由于BizTalk不自带TCP/IP适配器,因此在使用之前需要先到CodePlex的BTSTCPIP站点上去下载安装文件,安装过程比较简单,但是需要注意的是在安装之后或者在安装过程中需要对文件对话框里的配置文件内容手动添加到BizTalk的运行时配置文件(BTSNTSvc.exe.config)。

否则在运行时会出现 “The type initializer for ‘Microsoft.Samples.BizTalk.Adapter.Tcp.Receive.ReceiveAdapter‘ threw an exception.”的异常。

添加适配器

  安装完毕之后需要在BizTalk管理控制台添加该适配器,以过程是为了给TCP/IP适配器创建相应的接收和发送主机。

在适配器的属性配置窗口,输入相应的适器名称,在适配器选项列表中选择适配器,应用之后就会在右侧的窗口看到该适配器的接收和发送主机。

演示

  该适配器具体的说明可以参考安装目录下的《TCPIP Adapter User Guide》,在以下的演示时我们同时将使用到安装目录下的:TcpClient.exe,TcpServer.exe工具。分别作为TCP请求客户端和 TCP服务器。如果对TCP传输的内容感兴趣的话也可以使用tcpTrace(第三方工具)来监听传输过程中的数据包。

 以下要演示的是比较好理解的两个场景,一个是单向请求和双向请求。演示的逻辑是在BizTalk先创建一个TCP/IP的接收端口,用来监听来自 TCPClient.exe发送的请求。再创建一个发送端口订阅来自相应接收端口传过来的数据。并该消息发送到TCPServer.exe。具体的配置过 程可以参考用户手册。

单向请求

1.接收端口配置

2.TCP接收适配器属性配置

3.发送端口配置

4.TCP发送适配器属性配置

5.结果

双向请求

配置步骤与单向的基本一致,只是在创建端口时选择双向的端口类型即可。

1.TCPServer的配置

2.请求与结果

在TCP适配器配置中所使用的[S],[E]是接收适配器识别的起止符,不能修改。而[start],[end]为返回数据的起止符可以修改。另外TCP/IP适配器还支持双工访问。

时间: 2024-07-29 23:44:35

BizTalk开发系列(三十五) TCP/IP 适配器的相关文章

BizTalk开发系列(三十八)微软BizTalk Server定价和许可[解读]

做BizTalk的项目一段时间了,但是对BizTalk的价格和许可还不是很了解.给客户设计解决方案时大部分产品都是直接按照企业版的功能来设计,很 少考虑到价格和许可方面的因素,以为这个不是我们的事情或者认为使用企业版是应该的,企业软件的销售就是有意思,懂产品的和卖产品的一般不是一个人.懂产 品的一般是做技术的,学这个产品的时候就是用D版的或者是企业版,不会去关心不同产品的定价.当然在跟客户讲的时候就很少考虑版本及价格因素.而卖产品就 会添油加醋说要实现这样的平台您需要购买XX.YY产品,当然为要

BizTalk 开发系列(三十九) BizTalk Server 2009技术概览

BizTalk Server 2009已经发布一段时间了,之前Beta版发布的时候也写过一篇文章<BizTalk Server 2009 Beta初体验>, 当时比较了2006 R2与2009 Beta这两个版本之间的常见功能的开发.发现表现平平,没有什么太让人兴奋的地方.随着最近一段时间BizTalk Server 2009配套产品(组件)的陆续发布.对于新一代的BizTalk开发应用平台的认可逐渐清晰起来. BizTalk新一代的开发与应用平台除了操作系统.数据库及集成开发环境之外主要包括

BizTalk开发系列(三十四) Xpath

XPath 是在 XML 文档中查找信息的语言,在BizTalk的开发中应用非常广泛,当然你可以不必先学Xpath再去学BizTalk.但是如果对Xpath有一定了解的 话,在很多应用下会使你的开发更加快捷.为了方便查阅整理了一些Xpath常识和实际实例给开发过程提供个参考.由于BizTalk还未支持Xpath 2.0,所以以下的例子都是基于W3C 1.0规范. Xpath的重要性[实 际的场景] 之前做一个升级的项目,在项目中需要对XML进行节点查找并比较里面相应的值,通过比较结果再选取它的父

BizTalk开发系列(三十二)浅谈BizTalk主机性能优化

很多BizTalk的项目都要考虑到性能优化的问题,虽然BizTalk采用多线程处理消息的,大大提高了程序效率.但默认情况下 BizTalk的主机有很多阻止参数会控制BizTalk对服务器的资源使用率,从而约束了BizTalk的效率.之前做了一个200万条CSV数据通过 BizTalk传到数据库的程序.在不改变程序的情况下对主机性能做了一下简单优化,处理效率发生了成倍的增长. 程序逻辑 先简单的介绍一下程序的处理逻辑,CSV原文件大概有200多万条数据,文件大小50多M.每条只有两个字段总长度大概

BizTalk开发系列(三十)单向端口实现请求-响应

BizTalk本质上是异步的消息处理引擎.BizTalk的请求与响应模式是基于异步之上的同步消息交换.消息引擎通过消息的扩展架构链接许 多异步消息,消息的相关集关联请求与响应消息.例如,客户端发送一个SOAP请求到BizTalk SOAP适配器.连接该Web Service的BizTalk Orchestration接收处理消息.并返回一个SOAP响应消息.对于客户端程序来说是一个同步的SOAP请求.但在引擎内部则是通过并联交换许多 的异步消息来实现. 以下是请求-响应模式中的五个架构属性: B

BizTalk开发系列(三十六) Orchestration单实例执行

BizTalk 是高效的消息处理引擎,采用多线程并发的方式来处理消息.也就是说当有消息被接收的时候就会产生一个新的消息处理实例.但有时目标系统可能并没有并发处理 的能力, 这时就需要在BizTalk中采用单实例的方式来处理消息.在BizTalk的管道中直接可以启用按序送达的方式来实现, 但是在Orchestration中并没有提供类似的选项.该如何做到呢? 其实在BizTalk中可以根据设置消息的Correlation Set也就是相关属性来实现这样的效果.也就是第一条消息进来之后创建一个Orc

QT开发(三十五)——QT进程间通信

QT开发(三十五)--QT进程间通信 Qt 是一个跨平台的应用框架,其进程间通信机制当然可以使用所在平台的进程间通信机制,如在Windows平台上的Message机制.共享内存.文件映射.管道.Socket等.其中,Qt对一些许多平台共有的IPC机制进行了封装. 一.TCP/IP 其实就是通过网络模块实现的IPC.不过Qt对其进行了封装,并提供了两个层次的API,包括应用程序级的QNetworkAccessManager, QFtp等和底层的QTcpSocket, QTcpServer, QSs

BizTalk开发系列(三十三)BizTalk之Excel终极解决方案

Excel作为优秀的客户端数据处理程序得到了广泛的应用. 由于其简单又强大的功能在很多公司或个人的数据处理中占用非常重要的位置. 而BizTalk作为微软的SOA主打产品虽然免费提供了很多Adapter支持各种协议及应用程序. 不过非常可惜没有提供对富客户端程序Excel的"原生态"支持. 所以我们只能自己查找解决办法. 应用程序对Excel的支持网上已经有很多解决方案的,一部分是使用ODBC的excel驱动将Excel作为数据源进行处理,对于规范数据表之类的Excel文档这种方法比较

BizTalk 开发系列(四十二) 为BizTalk应用程序打包不同的环境Binding

我们在使用微软或者其他公司提供的BizTalk应用程序MSI包的时候经常会有一个目标环境的选择选项.该选项可以在不同的环境下使用不同的绑定(BizTalk应用程序配置)感觉很高级. 其实这个非常的简单,只需要两个步骤: 第一, 针对不同环境配置不同的Binding文件,具体你可以先把BizTalk应用程序配置为开发环境(比如相应的路径.数据库连接等).然后导出Binding文件.然后再发为生产环境的配置再导出成Binding文件. 第二, 点击BizTalk Application的Resour