关于Kafka的那些坑(topic命名,一定不要用 点"."或者 下划线"_")

https://blog.csdn.net/csdn_wangqi/article/details/79238068

进来使用了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。便于查询记录。当然,这个根据需要,此条仅做讨论用。


评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值