Skip to content

Support consumeExecutor isolation for DefaultMQPushConsumer #1437

@sandynz

Description

@sandynz

FEATURE REQUEST

  1. Please describe the feature you are requesting.
    There is a dedicated ThreadPoolExecutor (named consumeExecutor) in ConsumeMessageConcurrentlyService, all messages will be consumed in this executor. Sometimes, we need to isolate different messages to be executed in diferent ThreadPoolExecutor.

  2. Provide any additional detail on your proposed use case for this feature.
    ThreadPoolExecutor isolation by topic priority or something else, to achive better stability or performance.

  3. Indicate the importance of this issue to you (blocker, must-have, should-have, nice-to-have). Are you currently using any workarounds to address this issue?
    should-have.
    Possible workaround: use DefaultMQPullConsumer or MQPullConsumerScheduleService instead.
    I've written some code to verify whether isolation works or not, https://github.com/sandynz/rocketmq/tree/feature/consumeExecutorDispatch

  4. If there are some sub-tasks using -[] for each subtask and create a corresponding issue to map to the sub task:
    No

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions