wangweianger / zanePerfor

前端性能监控系统,消息队列,高可用,集群等相关架构
Other
1.75k stars 420 forks source link

kafka的用法可能有点问题 #42

Open JsonMa opened 4 years ago

JsonMa commented 4 years ago

目前的kafka消费策略是有点问题的,没有从根本解决kafka fetch loop的问题,虽然队列限制了10000的大小,但是fetch loop会一直执行,除非手动pause,offset会一直自动提交。如果收到消息后判断当前队列大于10000后,直接return是会丢失消息的。同时,当消息量增加,消费能力较弱时,node eventloop由于在不停触发on message事件,会导致eventloop队列内持续增长,有内存溢出的风险。

JsonMa commented 4 years ago

@wangweianger

fe-linjin commented 4 years ago

目前的kafka消费策略是有点问题的,没有从根本解决kafka fetch loop的问题,虽然队列限制了10000的大小,但是fetch loop会一直执行,除非手动pause,offset会一直自动提交。如果收到消息后判断当前队列大于10000后,直接return是会丢失消息的。同时,当消息量增加,消费能力较弱时,node eventloop由于在不停触发on message事件,会导致eventloop队列内持续增长,有内存溢出的风险。

我也觉得是的,请问这位老哥是怎么解决的?