kafka遇到的坑

一、kafka_2.11-0.11.0.2版本中advertised.listeners参数导致的大坑:

场景:在我们自己的服务器上安装好单机kafka_2.11-0.11.0.2后,让另一家公司往我们的kafka的topic上推数,因为我们两家的的Linux服务器都是在云上,所以需要做网络映射让他们的服务器能够访问我们的服务器,能ping通也能Telnet端口9092。但是那家公司死活把数推不过来。总是报这么个错:The ExecutionException occured : {}.

在这里插入图片描述解决:修改我们服务器上kafka的config/server.properties文件advertised.listeners参数,后重启kakfa修改的才会生效

正确的配置:advertised.listeners=PLAINTEXT://kafkahost:9092
以前导致以上报错的配置:advertised.listeners=PLAINTEXT://我方内网实际IP:9092
在我方的Linux服务器上的/etc/hosts文件下添加一行:
我方内网实际IP kafkahost
在那家公司的Linux服务器上的/etc/hosts文件中添加一行:
我方映射给这家公司的IP kafkahost
做完以上操作后在代码里写bootstrapServers, "kafkahost:9092"或者bootstrapServers, "我方映射给这家公司的IP:9092"都可以运行成功

第二次遇到这种情况是日志里报推送对方 Kafka 服务器的内网地址连接不上的问题(正常应该是连接对方提供的外网地址):
可参考:kafka客户端跨网段访问,看日志提示连接的还剩内网地址,且访问不通

二、offset is out of range

  当手动设置从指定的偏移量消费数据的时候,有时候指定的偏移量超出范围会报这个错:

2020-03-31 12:34:13.394  INFO 94001 --- [ConsumerExample] o.a.k.c.consumer.internals.Fetcher       : Fetch offset 228668 is out of range for partition weishiDataOGG_append-0, resetting offset

注意:在实际使用中发现这么个问题,那就是kafka中topic中的数据在设置的存储天数到期后数据会被删除,一开始我们的topic中有10万条数据,后来时间到期后数据自动被删除了,我就又重新生产了10万条数据,本以为第二次生产的数据的offset也是从0开始的,于是我就在代码中设置从offset为0L的地方开始消费,但是一直循环报错:Fetch offset 0 is out of range for partition weishiDataOGG_append-0, resetting offset,后来才发现第二次生产的数据的offset并不是从0开始的,而是在以前的基础上累加的,后来在代码中将offset设置成了99999L就不报那个错了。

三、java.lang.IllegalStateException: No current assignment for partition djt_db.hehe.result-0

  我用sparkstream连接的kafka,手动提交偏移量,保存到zk中,我的分区0消费到保存到zk中的偏移量是20,但是kafka中的偏移量被另一个程序修改为起止是21了,所以消费不到报了个这个错误:

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
回答: 在使用kafka生产者时,可能会遇到一些问题和。首先,需要注意的是kafka的生产者API。这个API是kafka中最常用的API之一,它允许我们从客户端的角度发送消息到kafka集群。\[1\]在使用生产者API时,我们需要熟悉kafka的基础概念,并且了解一些可能会用到的术语。\[2\]另外,一个常见的问题是幂等生产者。幂等生产者是kafka事务的必要条件,但不是充分条件。也就是说,开启幂等生产者不一定需要开启事务,但是开启kafka事务时必须要开启幂等生产者。实际上,当开启kafka事务时,kafka会自动开启幂等生产者。关于kafka事务的详细介绍可以在下一篇博文中了解到。\[3\]在使用kafka生产者时,还需要注意一些其他的技术细节和配置,以确保其简洁性和高性能。 #### 引用[.reference_title] - *1* *2* [Kafka :生产者深度实践总结](https://blog.csdn.net/yujia_666/article/details/115936336)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [一文读懂kafka的幂等生产者](https://blog.csdn.net/MichaelLi916/article/details/120190986)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小强签名设计

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值