2011-02-03 45 views
1

我有服务器向代理发送请求。当代理有话要说它将回复发送到服务器。一切都很简单明了。如何创建有效反转通信的自定义WCF绑定?

现在,我希望取消服务器到代理的通信。实际上,如果有工作要做,代理将轮询服务器并得到回复。

在我看来,这一切应在自定义WCF绑定进行封装,这将至少包含以下项目:

  • 到有效的WCF的引用绑定用于在逆转轮询服务器代理到服务器通道。
  • 轮询间隔

从服务器的角度来看,信道仅支持一个方式的接口。服务器将使用它作为任何一种方式的界面 - 火和忘记。自定义绑定将存储请求详细信息,并在轮询服务器后立即将其提供给正确的代理。

我在编写自定义WCF绑定方面经验不足。所以,我的问题是在那里的经验丰富的人 - 实施我所说的自定义绑定是否有意义?如果是这样,我真的想得到一些指针。

谢谢。

EDIT1:

代理不是服务器的客户端。目前的逻辑是,服务器启动与Agent的通信,这使得它成为Agent的客户端。扭转沟通渠道的需求并不是来自他们角色的功能变化。相反,这是代理的防火墙限制的结果 - 它可能禁止任何入站通信。我希望尽可能地保留服务器端的逻辑,这意味着服务器继续启动通信,但是在底层,它是不断轮询工作的代理。

+0

+1的政治正确的称呼 – Peladao 2011-02-03 18:45:24

+0

我不知道你为什么会需要自定义此绑定。客户端将调用服务器方法(GetWorkToDo(clientID))并且服务器响应。你只能真正关心与客户端的轮询时间间隔。 或者我错过了什么? – 2011-02-03 18:58:44

回答