Skip to content
Menu

Documentation

Event bus

The event bus carries events between modules. Modules do not call it: they publish with await E(...).publish() and consume with @on.

Choose the driver with EVENT_BUS_BACKEND. The default, auto, chooses streams in production and memory elsewhere. A named instance takes the option url, its own Redis connection.

Drivers

streams

Redis Streams: durable, delivered at least once, with consumer groups. Use it in production. It does not support wildcard subscriptions.

redis

Redis Pub/Sub: volatile, delivered only to live subscribers, with wildcard subscriptions.

Limits. For development and tests. It is refused in production unless SANDLOOM_ACCEPTED_RISKS lists volatile_event_bus.

memory

In-process and volatile, with wildcard subscriptions.

Limits. The same as redis: for development and tests, and it needs the same accepted risk in production.