从另一个调用一个WCF服务时要考虑的事项

Lea*_*ner 6 wcf web-services asmx wcf-binding

我们正在将一组WSE服务迁移到WCF平台.

通过安全HTTP调用新的WCF服务.(https)

我想从另一个WCF服务调用一个WCF服务的操作合同.这两种服务主要托管在同一个IIS中,但它们可以位于单独的IIS服务器上.

  1. 在这种情况下,我是否需要处理一些事情(目前我显然不知道)?
  2. 在这种情况下是否有任何特殊的呼叫机制?
  3. 当呼叫是同步的还是异步的时,呼叫机制是否会改变?
  4. 你能否提出一些在这种情况下容易获得的绑定?

小智 4

1.) 如果服务位于同一个盒子上,请使用命名管道来相互通信,除非您有任何令人信服的理由不这样做。虽然 WCF 本身并不关心您正在做什么,只要地址、绑定和契约都匹配(看看我在那里做了什么?),而 .NET 在建立网络连接时会关心您正在做什么。使用的越少越好。(有关更多详细信息,请参阅http://msdn.microsoft.com/en-us/library/fb6y0fyc.aspx )

2.) 如#1 中所述,如果他们在同一个盒子上通话,请使用命名管道,除非有充分的理由不这样做。

3.) 您能否更详细地说明您的意思或您打算做什么?其中很多内容都是为您构建的,因此假设您熟悉实现异步方法和使用异步回调,简短的答案是肯定的,它与同步调用操作不同,但这是可以预料的。或者你的意思是IsOneWay = true?如果是这种情况,调用机制是相同的,但可能存在许多其他问题(例如故障)

4.) 命名管道位于同一个盒子上,否则为 BasicHttp(除非您需要 WS 的任何附加功能)。