消费kafka数据再反查数据库,这种场景如何处理
现在有一个场景,会订阅kafka的topic,实时获取消息,之后通过消息内容,反查数据库,获取到一些构建文档必须的字段; 之后消费构建得到的文档;
现在遇到一个比较大的问题就是消费能力跟不上;不知道这种场景下有什么好的解决方案。
这么多年了,最后放弃手撸的伪流处理代码,用了flink,map里翻查数据库,也够用了。不够就加并行度完事。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
消费端目前用的是多线程么?可以采用多实例部署,每个实例是一个进程,即一个consumer,每个consumer再使用线程池,异步消费
多消费端,每个消费端用线程池异步处理
本人用python消费kafka也遇到消费能力低下问题。我用的kafka-python, 然后是多进程处理。但是这方案每个进程内都是同步阻塞的。目前了解下来可以用aiokafka 替代实现。另外分享一点。
有两种方法能避免阻塞型调用:
. 在单独的线程中运行各个阻塞版本
. 把每个阻塞型的操作转换成非阻塞型的异步调用