RongtongJin commented on issue #9754: URL: https://github.com/apache/rocketmq/issues/9754#issuecomment-3480023874
This is an interesting proposal! However, it involves significant changes on both the broker and client sides. To move forward, we recommend submitting a RocketMQ Improvement Proposal (RIP) following the process outlined here: https://github.com/apache/rocketmq/wiki/RocketMQ-Improvement-Proposal. In the RIP, you can provide a comprehensive design that clearly addresses the following aspects (include, but not be limited to): - API/Interface Changes: Detail what new client-side APIs or configuration options will be introduced (e.g., for specifying consumer-tag and consumer-tag-filter-conditions), and how they integrate with existing subscription and consumption logic. - Broker-Side Message Routing: Explain how the broker will manage message delivery to multiple consumers within the same consumer group, each with distinct consumer-tag and associated filter conditions. Specifically, describe how the broker ensures no message loss and maintains correct delivery semantics when multiple tagged consumers concurrently pull messages. - Fallback and DLQ Handling: Formalize the fallback mechanism (e.g., default tag consumption vs. DLQ routing) and how it’s configured and enforced on the broker. - Backward Compatibility: Ensure the proposal maintains compatibility with existing consumers that do not use consumer tags. Given the complexity and cross-cutting nature of this feature, a well-structured RIP will help the community evaluate feasibility, consistency with RocketMQ’s architecture, and potential edge cases. Looking forward to your detailed proposal! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
