Please be aware that you are viewing our bleeding edge unstable documentation. Unless you wanted to view the bleeding edge (and possibly unstable) documentation, we recommend you use our stable docs.

Go to Ably's stable canonical documentation »

I know what I'm doing, let me see the bleeding edge docs »

You are viewing our bleeding edge unstable documentation. We recommend you use our stable documentation »
Fork me on GitHub

Message queues provide a reliable mechanism for customers to process, store, augment or reroute realtime data efficiently and asynchronously by workers.

Using configurable rules, you can ensure that your messages, presence and channel lifecycle events are enqueued on an Ably message queue. Unlike our channels which follow a pub/sub pattern where each message is delivered to any number of subscribers, our message queues operate on the basis that each messages is delivered to only one subscriber.

As each message is delivered once to a single subscriber, queues are commonly used by one or more workers to process realtime data published by Ably asynchronously. For example, using workers subscribed to a queue, you could persist each message of a live chat to your own database, start publishing updates once a channel becomes active, or trigger an event if a device has submitted a location that indicates that it has reached its destination.

To find out more about why and when we recommend message queues are used, see the article Message queues — the right way to process and work with realtime data on your servers.

To find out more about the data and event types supported by Ably message queues, see the WebHooks documentation which supports the same data and event types.

Message queueing is currently in beta and as such only available to our Enterprise customers. If you are interested in using message queues, please get in touch with us.