首先描述一下我的项目,springmvc与kafka整合用了spring-integration-kafka,1.3.0版本的。producer发日志主要用了MessageChannel.send()这个方法,kafka接收消息最大值我设置了5M,然后我就用一个4M文件以及5.2M文件作为消息内容测试,但是MessageChannel.send()每次都是返回true,很明显,4M文件kafka集群可以接收,返回true正确,而5.2M文件kafka集群是接收不了的,所以,请问下生产者如何才能确定消息被kafka集群成功接收?
看了一下kafka官方,单纯的0.10kafka-cilent.jar是有提供callback的,但是因为是整合到spring里面的,希望有热心人解答一下
昵称
0 声望
这家伙太懒,什么都没留下
kafka发送有几种模式
1、发送不应答
2、发送主节点应答
3、发送主节点和备节点都应答。
spring-integration-kafka我以前看了下,只是浅显的连接,因为kafka只支持0.8,所以就没有使用了,你可以依照上面3种模式找一下。
callback()是挺好用的,整合在spring也是可行的。
你的意思是不引用spring-integration-kafka这个jar包,而是直接引用spring框架还有 0.10kafka-cilent.jar就好?这样不引用spring-integration-kafka效率会不会差?
我们是弃用了,用spring自己封装的,kafka很简单,你把它当数据库来看,每个连接用连接池实现,一样的(因为我们用了同步,而非异步)。
你的答案