하나의 application에서 bunch of messages(메세지 묶음)을 수신하고 이를 FIFO(선입선출) 기반으로 하나 이상의 다른 애플리케이션에 전달하는 것이다. 수신하는 각 application에는 고유의 queue가 존재한다.
Message Bus는 'Service Bus'라 부를 수 있다. Message Bus는 하나 이상의 application과 다른 하나 이상의 application과 메시지를 통신할 수 있도록 messaging infrastructure(기반)을 제공한다. Message Bus는 FIFO(선입선출)을 보장하지 않는다. Message Bus를 subscibe 한 Subscribers는 publisher에 대해 알지 못한 채로 published(발행된) message를 수신한다.
message는 Message Bus에게 API를 송신함으로써 발행되고, 수신하는 API는 원하는 message를 수신할 수 있다.
Publisher는 state update와 같은 내용을 Message Bus에 싣고, 이러한 message가 필요한 Subscriber는 Message Bus로부터 필요한 message를 받는다. 즉, m를 게시하면 버스로 보내고 버스에 연결된 어플리케이션들이 메세지를 각자 가지고 가는 방식이다.