关于Kafka的那些坑

进来使用了Kafka消息队列,喜忧参半。

细数一下,踩过的坑。

1、最好不要用Windows服务器去搞,当然像本人这样被迫使用的,就硬着头皮搞。

Windows服务器搭建Kafka,首先先例少。其次稳定性,个人感觉要比Linux或者Mac上差远了。Windows上,停止Kafka后,在启动需要删掉log。否则会报错,log正在被另一个进程访问。Mac运行则没发现同样错误。

2、Kafka的topic命名,一定不要用 点"."或者 下划线"_"。本人亲测,下划线将会有坑。没有去细读底层代码,但实际运行发现

例如通道名 test_a  和 test。 两个通道就会有问题,本人亲测,向test发送消息,consumer收不到test通道的消息,向test_a发送消息,consumer监听test_a则可以收到。虽然没有深究根源,但建议各位直接使用全英文topic名,省去麻烦。另外对于大小写也存在问题,不要创建字母相同,仅大小写不同的topic。

3、关于删除Kafka的topic,尤其是在Windows下,很可能灰常麻烦。仅执行delete topic 是不好使的。还需要去zookeeper中删掉。

 删除命令:./bin/kafka-topics  --delete --zookeeper 【zookeeper server】  --topic 【topic name】

       执行zookeeper/bin/zkCli.cmd

 输入命令:ls /brokers/topics

 会看到topic 列表

然后输入:rmr /brokers/topics/【topic name】(替换需要删掉的topic)

4、可以考虑搭配数据库使用,数据库记录消息。这样即便消息队列挂掉,也有据可查。Kafka消息可以添加key,添加唯一key。便于查询记录。当然,这个根据需要,此条仅做讨论用。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 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
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值