10.kafka消费者如何分配分区

 我来答
文岁战c2
2018-11-14 · TA获得超过191个赞
知道小有建树答主
回答量:325
采纳率:33%
帮助的人:44.9万
展开全部
从好的方面来说,引入多个consumer的初衷大多是为了提升消费性能,即提升消费的吞吐量。试想你的业务消费代码打算消费100个分区的数据,使用一个consumer消费有很大可能使得各个分区的消费进度不均匀,且单个consumer单次poll回来的数据量是有限制的,最终消费端总的TPS也受限于单consumer的性能。
从不好的方面看,某个组内的consumer数越多,通常意味着该group经rebalance后达到稳定状态的时间也就越长,因而你可能需要为max.poll.interval.ms设置更大的值。曾经也见过国外有个用户发帖子抱怨说他的某个consumer group下有100个consumer,每次rebalance一次都要10分钟。具体的原因就在于coordinator需要等待所有的组成员都发送JoinGroup请求后才会将group置于AwaitingSync状态,然后等待leader成员分配方案并将方案发送给它,之后coordinator下发分配方案给各个成员。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
您可能需要的服务
百度律临官方认证律师咨询
平均3分钟响应 | 问题解决率99% | 24小时在线
立即免费咨询律师
17278人正在获得一对一解答
成都星星点灯5分钟前提交了问题
青岛梦幻岛2分钟前提交了问题
昆明彩云之南5分钟前提交了问题
下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消
还有疑问? 马上咨询34461位在线律师,3分钟快速解答
立即免费咨询律师

辅 助

模 式