Redis Streams transport adapter using Redix.
Uses the Redis Streams data structure (XADD / XREADGROUP / XACK) for durable, consumer-group-aware messaging with at-least-once delivery.
Features
- Consumer groups via
XREADGROUP/XACK. - Pending entry list (PEL) recovery on restart via
XAUTOCLAIM. - DLQ routing for exhausted retries.
- Configurable block timeout and batch size.
Configuration
config :phoenix_micro,
transports: [
redis_streams: [
url: "redis://localhost:6379",
consumer_group: "phoenix_micro",
consumer_name: "node_1",
block_ms: 2_000,
batch_size: 10,
claim_idle_ms: 30_000
]
]
Summary
Functions
Returns a specification to start this module under a supervisor.
Functions
@spec child_spec(keyword()) :: Supervisor.child_spec()
Returns a specification to start this module under a supervisor.
See Supervisor.
@spec start_link(keyword()) :: GenServer.on_start()