【问题标题】:what is/are the right WCF messaging function to use in my project?在我的项目中使用的正确 WCF 消息传递函数是什么?
【发布时间】:2012-09-06 05:20:16
【问题描述】:

我是 WCF 的新手,我有一个项目需要迁移到带有客户端/服务器和服务器到服务器架构的 WCF 通信基础。

我的问题是该项目需要什么正确的消息传递功能,以确保整个网络的数据安全、可靠的连接和数据的快速交换。

我发现 WCF 有很多消息传递功能。

下面是我项目的架构:

注意:客户端应同时由数据处理服务器和 Feed 源服务器更新。并且客户端还向服务器发送同时请求,同时提要源服务器仍在提供提要。

如果有任何建议或 cmets,我将不胜感激。

【问题讨论】:

  • 你如何解决这个问题的任何更新?

标签: wcf


【解决方案1】:

我的第一个问题是,为什么要将连接管理器 (CM) 组件放在客户和他们想要使用的服务之间?它的工作是什么,这意味着它需要处于一切之中?

这最终意味着您的 CM 组件将不得不处理可能跨潜在不同传输绑定的大量双向流量,并引入单个故障点。

如果客户端 A 只想接收来自 Feed Source (FS) 组件的消息怎么办?当客户端 A 只想发送订阅通知以接收来自 FS 的更新时,为什么必须与中介打交道?

同样,如果客户端 B 想向数据处理 (DP) 组件发送消息怎么办?当然它应该能够向 DP 发送消息?

我认为你想用这个架构做的大部分事情都可以通过单向消息传递来实现,在这种情况下你应该使用 netMsmqBinding(假设你在一个纯 wcf 环境中)。

【讨论】:

  • CM(连接管理器)管理所有连接并缓存来自DP的一些信息。这是为了确保整个系统能够在涉及数千个客户端的环境中扩展。它还确保客户端不会直接连接到 DP 服务器。此外,CM 将把客户端连接到 DP 和 FS。虽然 FS 提供连续进料,但同时进行处理。客户端必须同时接收来自 FS 的提要并执行与 DP 的请求。
  • 我实际上正在考虑在 WCF 中使用双工和回调,购买尚未最终确定。实际上流程是,一旦客户端连接到 CM,CM 将为 PD 和 FS 提供通道。然后,FS 同时向连接的客户端广播馈送。并且客户端还可以在接收提要的同时向 DP 发送请求。此外,如果设置发生更改,DP 还会更新客户端。我应该继续我在 WCF 下使用 Duplex 和 Callback 的计划吗? (顺便说一句,我正在实施 NetTcpBinding)
  • 带回调的双工 WCF 理解和实现起来很复杂,而且它不能很好地扩展(回调)或处理失败(无排队)。消息传递的一种方式很容易理解和开发,它可以扩展并且是容错的。此外,我不明白为什么需要 CM 组件,因为它所做的只是缓存公共信息。如果您担心数据库争用或可用性,可以在服务本身上引入此功能。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-22
  • 2011-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多