不好意思今天才看见,我最近看了下源码,阻塞是在获取元数据(Metadata )的时候才会触发,第一次启动连不上服务端,内存中Metadata 对应的topic为空造成了强行当前线程阻塞,在站点运行过程中不会触发。发送是异步发送,但是发送前有段元数据的检测是造成阻塞的原因
你好我再看client源码的时候发现,在send()过程有个检测metadata的时候也会触发max.block.ms,而且这个操作是阻塞当前线程,也就是我服务端挂了,当前线程会被阻塞,这样不是不能达到异步效果吗。kafka service挂了,当前业务也受到了影响