-
-
Notifications
You must be signed in to change notification settings - Fork 96
Open
Description
Description
- Current Gateway implementation groups messages by stream then produces per-stream sequentially, creating overhead for multi-stream scenarios
- Need efficient batch API for producing to multiple streams in parallel with single method call
- Generic type parameter variance constraints prevent placing multi-stream overload on contravariant
IProducer<in T>interface - Existing single-stream produce methods must remain unchanged for backward compatibility
Deliverables
- Request Types: Create
ProduceRequestandProduceRequest<TProduceOptions>record structs as input types for multi-stream operations - Interface Methods: Add default interface methods to
IProducerandIProducer<TProduceOptions>with parallel execution viaTask.WhenAll - BaseProducer Implementation: Override multi-stream methods in
BaseProducer<T>to support all concrete producer implementations - Gateway Refactor: Update
GatewayHandlerto batch messages by stream and use single multi-stream produce call instead of per-stream loops - Producer Delegation: Add multi-stream delegation methods to
GatewayProducerwith readiness checks - Test Coverage: Add unit tests validating multi-stream, empty requests, same-stream batching, and untyped request variants
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels