WCF NetTCP绑定Internet

Art*_*ero 7 wcf wcf-binding .net-3.5

我有个问题.我想提供一系列使用WCF的服务.使用服务的客户端也是带有WCF的.NET.我希望具有高速访问,快速响应,传输中小数据合同(主要.net基本数据类型).分发将通过互联网进行,我正在寻找可靠性,可用性和基本安全性.

我不想使用WsHttp,因为我唯一的客户端基于.net,我将有近150个客户端请求服务.

你有什么建议用于绑定?有任何缺点,风险等吗?

提前致谢!

Jer*_*ard 8

由于您计划使用简单类型和小数据协定,因此与通过Internet引入的延迟相比,您使用的绑定几乎无关紧要.所以,正确的答案是使用最容易管理和最安全的那个.

我建议您在IIS中托管应用程序并使用wsHttpBinding并获取随之而来的所有可管理性.它也恰好可以互操作,虽然今天无关紧要,但它只是免费的,为什么不呢?

并且,请考虑您的服务的粒度.您更了解客户,但在广泛的互联网上,会发生一些事情.由于往返时间在互联网上是可变的,无法控制,它可以在几毫秒或几秒或者甚至有可能不到达那里.因此,如果可能的话,您应该减少具有更大负载的行程,并使用各种缓存和异步操作来使应用程序显示为"快速".


Shi*_*iji 6

在这里有一篇关于选择Juval Lowy绑定的好文章:

http://www.code-magazine.com/article.aspx?quickid=0605051&page=3

通常建议不要在互联网上使用net tcp绑定.没有听说过有人这样做过.虽然如果端口一直打开并且没有人阻止呼叫,它可能会起作用.

使用nettcp进行测试,如果不起作用,则只需更改配置即可.

最重要的是要考虑您的安全需求.你是否需要点对点,然后在ssl上使用basichttp.你需要端到端,然后wshttp与消息加密.


Phi*_*ppe 0

根据您的场景,NetTcpBinding 是选择的绑定。由于您确定客户端将是 WCF,因此不需要互操作性。

请参阅《编程 WCF 服务》一书

我唯一不确定的是防火墙。如果您必须理解这些内容,也许某些 WS 绑定可能更合适。