flusso-queue-channel
An in-process work queue over a bounded tokio mpsc channel.
At a glance
| Constructor | [channel](capacity) → ([ChannelProducer], [ChannelConsumer]) |
| Producer | cloneable — publish from many tasks |
| Consumer | single — one per queue |
| Backpressure | publish waits when the channel is full |
| Close | drains and closes once every producer is dropped |
| Ack | no-op (nothing to make durable in memory) |
How it works
[channel] returns a cloneable [ChannelProducer] and a single
[ChannelConsumer]. The bound gives backpressure — publishing waits when the
channel is full — and the queue closes and drains once every producer is
dropped.
Acknowledgement is a no-op: an in-memory channel has nothing to make durable.
Redelivery for the change pipeline comes from the source, not the channel —
the replication slot only advances once work is confirmed downstream. The
[AckHandle] surface is honored anyway, so the same engine loop runs unchanged
against a durable backend later.