Subscriptions
Use subscriptions when external consumers need to receive events emitted by a published app.
Poll delivery
Polling is the simplest integration shape. The consumer periodically asks for events after a cursor and stores the returned cursor after successful processing.
Use polling when:
- the consumer needs strong retry control
- network connectivity is intermittent
- batch processing is acceptable
- operational simplicity matters more than low latency
SSE delivery
SSE streams events over a long-lived HTTP connection. Use it when consumers need lower latency and can handle reconnect behavior.
Consumers must still persist progress. A live stream is not a substitute for durable processing.
Event selection
Subscriptions should be explicit about event types and target app/environment. Avoid broad event feeds unless the consumer is an audit or replication process.
Choosing poll or SSE
Failure handling
Consumers should treat event handling as at-least-once. Store cursors after processing and make side effects idempotent.