目录

问题现象:

问题分析:

解决方法:


问题现象:

        今天在本机想debug一下服务,发现在通过网关调用接口的时候,报了一个和kafka相关的错,如下:

java.net.UnknownHostException: kafkahost


问题分析:

        从报错信息可知,这是因为无法识别名为 kafkahost 的 host。

        通过查看 linux 服务器上的 kafka集群配置的某个服务实例的配置可以发现:

         listeners=PLAINTEXT://kafkahost:0091

        这个配置用到了报错信息中提到的 kafkahost,可以看见这个服务实例监听了 kafkahost:0091 这个ip端口;通过查看 linux服务器的 /etc/hosts 文件可以看到:

        kafkahost 指向的就是linux服务器ip。

         由于我是在本机服务中访问到了linux服务器上的kafka服务,自然就无法解析到 kafkahost 。因此需要在本机的hosts文件中也加入相应的配置


解决方法:

        找到本机的hosts文件路径:

        C:\Windows\System32\drivers\etc

        在文件末添加以下配置,让kafkahost 识别为linux服务器ip:

         重启本机服务,再次调用接口不再报错:

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐