我正处于 .NET 服务的规划阶段,该服务不断处理传入消息,其中涉及各种转换、数据库插入和更新等。作为一个整体,该服务庞大而复杂,但它执行的单个任务很小,简单,定义明确。
出于这个原因,并且为了便于将来扩展,我想将服务拆分为几个较小的服务,这些服务基本上执行部分处理,然后再将其传递给链中的下一个服务。
为了实现这一点,我需要某种中间消息传递系统,它将消息从一个服务传递到另一个服务。我希望以这样一种方式发生这种情况,即如果链中的链接崩溃或短暂脱机,则消息将开始排队并在目的地恢复联机后得到处理。
我一直对这类事情使用消息队列,但最近才知道 SQL Service Broker 似乎做了类似的事情。SQLSB 是这种情况的可行替代方案吗?如果是,我是否会通过使用它而不是标准消息队列来看到任何性能优势?
谢谢