您当前的位置: 首页 >  kafka

128 Kafka消息的分发

杨林伟 发布时间:2019-08-13 11:13:08 ,浏览量:2

Producer客户端负责消息的分发

  • kafka集群中的任何一个broker都可以向producer提供metadata信息,这些metadata中包含"集群中存活的servers列表"/"partitions leader列表"等信息;

  • 当producer获取到metadata信息之后, producer将会和Topic下所有partition leader保持socket连接;

  • 消息由producer直接通过socket发送到broker,中间不会经过任何"路由层",事实上,消息被路由到哪个partition上由producer客户端决定; 比如可以采用"random"“key-hash”"轮询"等,如果一个topic中有多个partitions,那么在producer端实现"消息均衡分发"是必要的。

  • 在producer端的配置文件中,开发者可以指定partition路由的方式。

Producer消息发送的应答机制

设置发送数据是否需要服务端的反馈,有三个值0,1,-1

  • 0: producer不会等待broker发送ack
  • 1: 当leader接收到消息之后发送ack
  • -1: 当所有的follower都同步消息成功后发送ack request.required.acks=0
关注
打赏
1688896170
查看更多评论

杨林伟

暂无认证

  • 2浏览

    0关注

    3183博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.1006s