X

0 声望

这家伙太懒,什么都没留下

个人动态
  • X 回复 無名kafka生产者Java客户端 中 :

    不好意思今天才看见,我最近看了下源码,阻塞是在获取元数据(Metadata )的时候才会触发,第一次启动连不上服务端,内存中Metadata 对应的topic为空造成了强行当前线程阻塞,在站点运行过程中不会触发。发送是异步发送,但是发送前有段元数据的检测是造成阻塞的原因

    5年前
  • 無名 回复 Xkafka生产者Java客户端 中 :

    不影响的,如果你异步发送,阻塞也是异步阻塞的,不会涉及到主线程的。并且是当ack=all的时候,才会异步阻塞。

    5年前
  • Xkafka生产者Java客户端 发表评论:

    你好我再看client源码的时候发现,在send()过程有个检测metadata的时候也会触发max.block.ms,而且这个操作是阻塞当前线程,也就是我服务端挂了,当前线程会被阻塞,这样不是不能达到异步效果吗。kafka service挂了,当前业务也受到了影响

    5年前