我正在阅读这篇文章http://weblogs.asp.net/spano/archive/2007/10/02/choosing-the-right-wcf-binding.aspx 来选择Binding选项.
我对这是什么意思有一个不同寻常的怀疑
脱机或断开连接,选择NetMsmqBinding
这是否意味着即使服务没有运行仍然使用该服务的客户端?
你能分享一些实时的例子吗?
Stu*_*tLC 10
2个绑定完全不同.
NetTcpBinding可以被认为是MS专有格式(通常是二进制)在概念上类似RPC(例如可以用来代替.NET Remoting).它是同步的,即客户端和服务器必须同时在线,并且客户端(几乎)立即收到响应.
MSMQ是Microsoft的面向消息的中间件解决方案,它围绕异步队列 - 例如,如果目标服务器在客户端发送消息时处于脱机状态,则消息将在客户端上排队,直到服务器重新联机.尽管可以通过从服务器到客户端的第二个队列实现双向通信,但每个队列只是一种方式.发送WCF MSMQ消息要求MSMQ在客户端上安装服务.队列中的消息可以具有传递"超时",否则将被置于适用的死信队列中.
现实世界的例子:
NetTcpBinding二进制序列高性能,微软WCF客户端和服务器之间,例如同步通信需要上传的文件,媒体等在那里Xml是没有用的(否则,我会使用wsHttpBinding同步Xml/ SOAP通讯)MSMQBindingDTC启用以确保2个或更多系统(例如财务)之间的可靠消息传递,其中至少一个端点在.Net中,以及"可兼容"服务器(不一定WCF,例如BizTalk,或其他EAI集线器或ESB总线,有适配器MSMQ,例如,桥之间存在MSMQ and MQSeries).消息通常采用Xml格式.TL; DR
这是否意味着即使服务没有运行仍然使用该服务的客户端
是.如果MSMQ在本地运行,客户端将立即返回成功的回应(表示邮件已排队).但这并不意味着服务器已成功接收消息.
| 归档时间: |
|
| 查看次数: |
3149 次 |
| 最近记录: |