Skip to main content

Overview

The BroccoliQueue is the main entry point for interacting with Broccoli. It provides methods for publishing messages, consuming messages, and processing messages with handlers.

Creating a queue

Use the builder pattern to create a queue instance:

Builder options

Publishing messages

Single message

Batch publishing

Consuming messages

Blocking consume

Waits until a message is available:

Non-blocking consume

Returns immediately with None if no message is available:

Batch consume

Consume multiple messages with a timeout:

Processing messages

The process_messages method provides a convenient way to consume and process messages in a loop:

With custom handlers

For more control over success and error handling:

Message lifecycle

Queue size

Get the current size of a queue:
For fairness queues, this returns sizes for each disambiguator sub-queue.