深入理解KAFKA-创新互联
(1)第一句话=========
KAFKA_LISTENERS:负责绑定网卡
KAFKA_ADVERTISED_LISTENERS:负责发布外网地址,这个地址会发布到zookeeper中。
(2)第二句话========
内网部署的程序,读的地址是KAFKA_LISTENERS写的。
外网部署的程序,读的地址是KAFKA_ADVERTISED_LISTENERS
zookeeper中存的地址是KAFKA_ADVERTISED_LISTENERS配置的,多个kafka注册到zookeeper就是把这个地址放到zookeeper中。如果不能理解的,可以用客户端工具打开zookeeper,看一下就清楚了。
仔细回味上面这几句话,接下来看实际例子。
(1)内网访问第一步:kafka配置0.0.0.0:9092,表示内网所有网卡都绑定9092
第二步:程序里写的地址就是内网的地址,下图是,172.16.3.130
(2)外网访问KAFKA_CFG_LISTENERS=PLAINTEXT://0.0.0.0:9092
将kafka绑定到局域网所有网卡,当局域网的机器访问的时候,直接在springboot中配置本地ip。如
以上程序,如果部署在外网。则需要做如下改变
第一步:KAFKA_CFG_ADVERTISED_LISTENERS配置这个。
KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://<互联网ip>:9092
,这句话意思是将PLAINTEXT://<互联网ip>:9092,放到zookeeper中。当外面的服务访问到zookeeper的时候,从这个地址拿到kafka的内容,看下图,zookeeper中的broker-ids里存的就是这个你写上去的地址。
第二步:springboot程序通过外网访问的时候,配置 改成这样
二、解析原理(1)程序首先是从zookeeper中获取broker地址。然后用这个地址去连kafka。如果配置的地址是外网程序找不到的一个地址,那就连不上了。
(2)zookeeper中的地址是通过
KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://<互联网ip>:9092
这个关键句来配置的。
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
分享文章:深入理解KAFKA-创新互联
标题路径:http://scyanting.com/article/eicdo.html