通知云计算中的WCF订户



我最近一直在阅读很多有关WCF的信息,并且每当实现订户广播机制的主题出现(如在即时消息传递系统中)时,解决方案总是使用静态词典保存您的订户频道。

可以在以下问题的答案中找到一个示例,但这是一个常见的做法。在服务

的各种电话中列出订户列表

这似乎是"传统"网络编程的一个非常好的解决方案,但是如何在云中处理?具体来说,我们如何解决网格中的每个计算机都有不同的"静态"变量的事实?

我对不同的云平台知之甚少。Azure,Amazon Web服务和VMware是否有不同的解决方案?

用于广播/推送式通知,请查看Signalr(http://signalr.net/)。微软正在使ASP.NET平台的那一部分:http://channel9.msdn.com/events/build/2012/3-034

它具有一些真正的不错功能,例如优雅地,如果服务器/客户端不支持诸如WebSocket之类的高级事物,则倒下多个机制。虽然可以做到,但您必须在WCF中进行编码。

云供应商平台之间存在很大的差异。我可以向您发布多个链接,但是您提到的云供应商正在用它们提供的内容更快地更改。您对特定云供应商的承诺是长期的...不要考虑供应商A的供应商B没有。有差异,例如……例如,亚马逊具有专业的VM:高I/O,高内存,高CPU。而Azure则具有更好设计的VM层。

我以这种方式考虑(MU意见)... Microsoft是一家拥有:.NET,ASP.NET,服务器平台:SQL Server,Windows Server,SharePoint,Office Services等的公司。反对像亚马逊或VMware这样的人,他们没有像这样丰富的产品组合。另外,Microsoft可以将这些服务器定为云中,Amazon/Rackspace/VMware必须为其支付Microsoft的溢价。您似乎正在谈论WCF/.NET,这将有利于Microsoft Azure平台。

在Azure上您可以运行Linux VM;Python,Java等的代码,但它有利于Microsoft堆栈。相反,对于AWS,您可以运行.NET/MICROSOFT等,但它有利于Linux/开源堆栈。从长远来看……因为在两年内,两个主要云供应商都将在这些领域做出承诺。例如,Rackspace正在与他们的OpenStack平台全力以赴...他们别无选择。

Windows Azure Service Bus有一个选项,您可以将其用于广播WCF事件。

真正的服务具有NetEventRelayBinding,该服务将允许订阅服务实例在客户端调用端点时依靠单向服务调用。如果客户被释放,他们将不会收到任何消息。

http://msdn.microsoft.com/en-us/wazplatformtrainingcourse_eventingingonservicebusvs2010_topic2.aspx

Brokered Messaging具有提示和订阅,其中可以将消息带到最多2,000个订户。这些消息存储持久,因此,如果客户重新连接时,他们将收到所有消息。

http://www.cloudcasts.net/devguide/default.aspx?id=12044

问:

alan

可能值得您研究Appharbor上的RabbitMQ。这是我一直想看的东西,但找不到时间。我只提到它,因为没有其他人;)

最新更新