今天在本机启动springboot项目并访问kafka服务的时候发现如下报错:
2022-01-12 10:53:34.843 WARN 69212 --- [ad | producer-1] org.apache.kafka.clients.NetworkClient :
[Producer clientId=producer-1]
Connection to node -1 (/127.0.0.1:9092) could not be established. Broker may not be available.
2022-01-12 10:53:34.844 WARN 69212 --- [ad | producer-1] org.apache.kafka.clients.NetworkClient :
[Producer clientId=producer-1] Bootstrap broker 127.0.0.1:9092 (id: -1 rack: null) disconnected
问题分析:
根据报错信息可知,这是因为服务读取到的kafka服务ip地址是
127.0.0.1:9092
;然而我的配置文件明明是这样的:
一直找不到是什么原因,因为整个项目中都找不到127.0.0.1:9092的关键字!!!
直到后来突然想起来这个springboot项目加入了微服务框架,因此启动后会注册到Naocs注册中心去成为一个微服务的;于是我去看了一下Nacos的配置中心,终于发现了原因:
显然,项目注册到Nacos之后,用到了这个xxx-dev.yaml配置文件!当项目的applicaition配置文件和nacos配置文件具有相同的配置属性时,优先使用nacos配置文件的,也就是说
nacos配置文件会覆盖项目的applicaition配置文件中,相同的配置属性
。
解决方法:
1、把nacos配置文件中的kafka配置去掉后,点击发布,如:
2、把nacos配置文件中的kafka配置ip修改为和项目的application配置文件一致后,点击发布,如:
重启项目再次访问kafka成功:
2020-08-19 22:55:56.089 WARN [-,,,] 35672 --- [ad |
pro
ducer
-1] org.apache.
kafka
.
client
s.Network
Client
: [
Pro
ducer
client
Id
=
pro
ducer
-1] Error while fetching metadata with correlation
id
483 : {abc_001=LEADER_NOT_AVAILABLE}
2020-08-19 22:55:56.205 WARN.
使用win7用
id
ea进行
kafka
进行生产者消费者远程连接时
[
kafka
-
pro
ducer
-network-thread |
pro
ducer
-1] WARN org.apache.
kafka
.
client
s.Network
Client
- [
Pro
ducer
client
Id
=
pro
ducer
-1]
Connec
tion to
node
-3 could not be establis...
记录Centos7安装
Kafka
,启动生产者报错
WARN [
Pro
ducer
client
Id
=console-
pro
ducer
]
Connec
tion to
node
-1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available. (org.apache.
kafka
.
client
s.Network
Client
)
使用命令行启动生产者:
bin/
kafka
-console-
pro
ducer
.sh --
2018-11-10 17:03:06,060] WARN [
Pro
ducer
client
Id
=
pro
ducer
-1]
Connec
tion to
node
-1 could not be established. Broker may not be available. (org.apache.
kafka
.
client
s.Network
Client
)
[2018-11-10 17:03:06,...
kafka
生产者一直报报警(启动后需要等一会才会报):
[2019-10-11T16:31:46,395][WARN ][o.a.k.c.Network
Client
] - [
Pro
ducer
client
Id
=
pro
ducer
-1]
Boot
strap broker ip:9092 (
id
: -3 rack: null)
dis
connec
ted
原因:
kafka
-
client
jar包...
kafka
发送数据报错: Error
connec
ting
to
node
xxxxx:9092 (
id
: 1 rack: null)java.net.UnknownHostExceptio
不多BB讲原理,只教你怎么用,看了全网没有比我更详细的了,yml
配置
,Config 工厂代码
配置
都有,batch-size、acks、offset、auto-commit、trusted-packages、poll-timeout、linger 应有尽有,批量消费、开启事务、定义批量消费数量、延时发送、
失败
重试、异常处理你还想要什么As we all know,当今世界最流行的消息中间件有 RabbitMq、RocketMq、
Kafka
,其中,应用最广泛的是RabbitMq,RocketMq。
yml中
配置
了
boot
strap-servers:
服务
器地址:9092,但是连接时却报了
Connec
tion to
node
-1 (localhost/127.0.0.1:9092) could not be established.