Guocheng Zhang created TUBEMQ-590:
-------------------------------------
Summary: Optimize the implementation of DefaultLoadBalancer class
Key: TUBEMQ-590
URL: https://issues.apache.org/jira/browse/TUBEMQ-590
Project: Apache TubeMQ
Issue Type: Improvement
Components: Master
Reporter: Guocheng Zhang
TubeMQ uses the server-side rebalance mode to allocate tasks. At present, the
task allocation mode is relatively single, and the implementation of this part
is relatively hard-coded, and the readability and maintainability are not good
enough.
Existing solutions take all the partitions of the topic set subscribed by the
consumer group according to the number of consumers in the consumer group, and
then extract the partitions at consumer number interval, and allocate the
partitions to the corresponding client; if the client or partition has
increasing or decreasing, the client with more partitions subscriptions will
release the partitions through partial balance, and will be allocated the
released partitions to consumers with less or no subscription partitions for
balanced consumption.
If you are interested, you can try to abstract this piece. At the same time,
you can also propose your rebalance plan, which is compatible on the basis of
existing rebalance.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)