MassTransit为RabbitMQ添加了什么?

End*_*ono 32 masstransit rabbitmq

与直接在RabbitMQ上构建相比,构建在MassTransit之上的好处是什么?

我相信MassTransit提供的一个好处是'类型'交换(通过接口/类型发布订阅),因此消息的内容是结构化的,与普通RabbitMQ交换相比,其中消息的内容是非结构化文本/ blob.

MassTransit还提供哪些其他好处?

Chr*_*son 45

MT在使用RabbitMQ时添加的东西:

  • 多线程,并发消费者
  • 消息序列化,包括接口和版本控制
  • 自动交换绑定,发布约定
  • Sagas,包括通过NHibernate的持久状态
  • 服务的性能计数器
  • 邮件标题
  • 故障处理

这些只是少数,有些比其他更重要.总线托管您的消费者,处理程序,传奇和管理所有线程的事实可能是最大的优势,并且您可以在同一进程中托管多个总线.

序列化是下一个最大的好处,因为这可能很难弄清楚,并且获得基于接口的消息契约与自动反序列化为类型(包括动态支持的接口类型)是巨大的.发布实现多个接口的单个​​类,并且看到所有感兴趣的消费者异步地获取他们的消息片段在生产中非常棒,因为新的接口可以添加到生产者并且下层消费者不受影响.

这些是一些,您可以在http://masstransit-project.com/MassTransit/understand/additions-to-transport.html查看更多文档,或者提供最近的.NET Rocks!播客真实地听你的一些相关内容.

  • 抽象也很好.我们在客户端部署时在云和RabbitMQ中使用Azure Service Buses,而无需进行任何重大的代码更改. (5认同)