WCF or ServiceBus?

本文关键字:ServiceBus or WCF | 更新日期: 2023-09-27 18:08:55

我正在开发一个云应用程序,索引大量文档(使用lucene),并托管一个wcf服务来搜索它。我有三个角色:

  • 一个web角色,它托管WCF服务,并在内存中保留索引的副本。
  • 用于管理的web角色(更新索引)。
  • 为更新消息轮询服务总线的工作角色。

更新过程:

  • 登录到Admin网站,并按下按钮,Admin webrole将更新消息放入队列,worker角色接收此消息,遍历文档源(它们也在线)并开始更新。

我希望每周更新索引一次或两次,因此工作者角色将消息队列池化很多时间而没有结果(即使我在thread.sleep中设置了很长的睡眠时间),并且我们必须为每个事务付费。

你觉得呢?在工作者角色中托管一个WCF服务来接收更新消息,而不是(大部分)不必要地轮询消息队列,这样会更好吗?

谢谢你的帮助!

T

WCF or ServiceBus?

除非您对服务总线消息传递有一些非常特殊的需求,否则这听起来有点小题大做,特别是在您发送的消息频率非常低的情况下。一个非常简单的WCF服务调用就足够了。如果WCF服务只保留在内部(意味着通过内部端点访问而不向外界公开),那么您甚至不需要担心安全性。

这取决于您将来对该应用程序的计划。
WCF绝对是一种建立角色间通信的好方法,特别是对于这些"低频"事件。但是,如果您计划拥有越来越多的这些管理事件(甚至可能计划调度其中的一些事件,使用服务总线消息的交付调度选项),那么服务总线可能会为您提供更多的东西。如果你不需要异步、调度和横向扩展,那就选择WCF吧祝你好运