1. Getting Started
  2. About Pulsar

About Messaging

What is messaging? Messaging provides a way to decouple services by communicating messages asynchronously.

Messages are the most basic unit of Pulsar. You can think of them as analogous to letters in a postal service system.

When you mail a letter, it is carrying information from you (the sender) to the receiver. You enclose your letter into its envelope and fill out the address. Once the letter is deposited into a collection box, it is picked up by the postal carrier and taken to the local post office. Next, the letter is taken to a processing center and it is sorted according to shape, size, and zip code. Once the letter is processed, a postmark is applied and then the letter is sent to the appropriate post office station. Finally, the postal carrier delivers the letter to the recipient.

Like the "post office" model, an application has a packet of data (not unlike a letter) it wants to send, and that data is sent to the Pulsar "broker" (or the central post office) that handles those messages. From there, the data is delivered to a Pulsar consumer (or in our analogy, the recipient's house). The main differences are:

  • messages are sent very fast, in milliseconds.
  • the recipient can handle large amounts of messages.

With application messaging, you are handling individual messages (one message at a time), and there are two typical ways to deliver data:

  • distributing work using a queue
  • fanning out messages to multiple interested parties (message bus)

Pulsar supports these classic use cases as well as advanced messaging patterns (such as scheduled delivery and failure handling). It was designed with messaging in mind, so Pulsar makes it easier to map your current design into the Pulsar model without extensive rework or the need to rearchitect your system around a streaming model.

Next steps

Modern Data Needs