|
|
|
|
|
by itaifrenkel
3188 days ago
|
|
The consumer groups proposal breaks the FIFO abstraction of a stream by allowing multiple clients to process a single stream. Have you considered adding a semantic layer inside streams that allows each client to consume a substream? In effect the stream becomes multiplexed substreams. If substreams makes the design too complex... have you considered server side stream 403 semantics? When a stream is manually deprecated it enters an immutable state and provides a redirect response with a link to another stream. This would allow multiplexing and demultiplexing streams without changing the client implementations too much. For completeness I would state the obvious when fifo grouping is needed:
1. Scaling stateful event processing by splitting streams and adding more clients (CPU limit)
2. Scaling cross region replication by splitting streams and adding more tcp connections (network limit)
3. Handling more throughput by splitting a stream into two redis nodes (disk I/O limit) |
|