事件总线(引擎)和消息队列有何区别?

事件总线(引擎)和消息队列有何区别?

阅读 12.2k
2 个回答

事件总线包含多个消息队列,就是所有事件都接收,由内部逻辑决定推送到哪个消息队列

试着回答一下 :

它们两者在系统架构中的角色不同。

  • eventbus ,是事件集散中心,它负责收集、散发事件。它本身不消费事件。
  • mq,一般是事件处理者,它接收到事件之后,内部消费掉。

eventbus 可以把收集到的事件,dispatch 给异构的 consumer(比如mq) 去处理。

当然,event bus 是一个模式,而 mq 是一种技术。你可以把 mq 改造一下,让 mq 实现 event bus 的功能,那么此时这个经过改造的 mq 它也能当做 event bus 来用。

推荐问题