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适配器还支持双工访问。
BizTalk开发系列(三十五) TCP/IP 适配器的更多相关文章
- BizTalk开发系列(二十五) SQL Adapter
SQL Server 是.NET开发的首选数据库.当然开发BizTalk应用程序很多也离不了SQL Server.针对SQL Server的数据操作BizTalk 提供了SQL Adapter作为与数 ...
- BizTalk 开发系列(三十九) BizTalk Server 2009技术概览
BizTalk Server 2009已经发布一段时间了,之前Beta版发布的时候也写过一篇文章<BizTalk Server 2009 Beta初体验>, 当时比较了2006 R2与20 ...
- BizTalk开发系列(三十八)微软BizTalk Server定价和许可[解读]
做BizTalk的项目一段时间了,但是对BizTalk的价格和许可还不是很了解.给客户设计解决方案时大部分产品都是直接按照企业版的功能来设计,很 少考虑到价格和许可方面的因素,以为这个不是我们的事情或 ...
- BizTalk开发系列(三十四) Xpath
XPath 是在 XML 文档中查找信息的语言,在BizTalk的开发中应用非常广泛,当然你可以不必先学Xpath再去学BizTalk.但是如果对Xpath有一定了解的 话,在很多应用下会使你的开发更 ...
- BizTalk开发系列(三十二)浅谈BizTalk主机性能优化
很多BizTalk的项目都要考虑到性能优化的问题,虽然BizTalk采用多线程处理消息的,大大提高了程序效率.但默认情况下 BizTalk的主机有很多阻止参数会控制BizTalk对服务器的资源使用率, ...
- BizTalk开发系列(三十)单向端口实现请求-响应
BizTalk本质上是异步的消息处理引擎.BizTalk的请求与响应模式是基于异步之上的同步消息交换.消息引擎通过消息的扩展架构链接许 多异步消息,消息的相关集关联请求与响应消息.例如,客户端发送一个 ...
- BizTalk开发系列(三十六) Orchestration单实例执行
BizTalk 是高效的消息处理引擎,采用多线程并发的方式来处理消息.也就是说当有消息被接收的时候就会产生一个新的消息处理实例.但有时目标系统可能并没有并发处理 的能力, 这时就需要在BizTalk中 ...
- 程序员与年龄:四十岁普通开发、三十五岁首席架构、三十岁基层Leader
最近,有一个词儿特别热门--躺平.有没有人跟你说过:"躺平说起来容易,做起来更容易." 和躺平相对的是另外一个词--内卷,群聊的时候,已经很多次看过草卷起来了.jpg表情包.某些节 ...
- BizTalk开发系列(三十三)BizTalk之Excel终极解决方案
Excel作为优秀的客户端数据处理程序得到了广泛的应用. 由于其简单又强大的功能在很多公司或个人的数据处理中占用非常重要的位置. 而BizTalk作为微软的SOA主打产品虽然免费提供了很多Adapte ...
随机推荐
- 深入理解java中的synchronized关键字
synchronized 关键字,代表这个方法加锁,相当于不管哪一个线程A每次运行到这个方法时,都要检查有没有其它正在用这个方法的线程B(或者C D等),有的话要等正在使用这个方法的线程B(或者C D ...
- Thymeleaf 集成spring
Thymeleaf 集成spring 如需先了解Thymeleaf的单独使用,请参考<Thymeleaf模板引擎使用>一文. 依赖的jar包 Thymeleaf 已经集成了spring的3 ...
- const int *
5.Please choose the right statement about constusage: A.const int a;//const interger B.int const a;/ ...
- HDU5739 Fantasia(点双连通分量 + Block Forest Data Structure)
题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=5739 Description Professor Zhang has an undirect ...
- Codeforces 567C Geometric Progression(思路)
题目大概说给一个整数序列,问里面有几个包含三个数字的子序列ai,aj,ak,满足ai*k*k=aj*k=ak. 感觉很多种做法的样子,我想到这么一种: 枚举中间的aj,看它左边有多少个aj/k右边有多 ...
- .net平台下C#socket通信(上)
在开始介绍socket前先补充补充基础知识,在此基础上理解网络通信才会顺理成章,当然有基础的可以跳过去了.都是废话,进入正题. TCP/IP:Transmission Control Protocol ...
- Moscow Pre-Finals Workshop 2016. National Taiwan U Selection
A. As Easy As Possible 每个点往右贪心找最近的点,可以得到一棵树,然后倍增查询即可. 时间复杂度$O((n+m)\log n)$. #include <bits/stdc+ ...
- ACM Greedy Mouse
Greedy Mouse 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 A fat mouse prepared M pounds of cat food,read ...
- 获取jQuery对象的第N个DOM元素 && table常用css样式
获取jQuery对象的第N个DOM元素 1.$(selector).get(N-1) 2.$(selector)[N-1] 注意:.index()方法返回的是一个数,相当于C#中的IndexOf() ...
- BZOJ4127: Abs
Description 给定一棵树,设计数据结构支持以下操作 1 u v d 表示将路径 (u,v) 加d 2 u v 表示询问路径 (u,v) 上点权绝对值的和 Input 第一行两个整数n和m,表 ...