apache-kafka - 从kafka主题获取消息
问题描述
我有一个用于 JDBC Kafka 连接的属性文件。在哪里topic.prefix=test-mysql-jdbc-
据我所知,当我们运行独立连接器时 -
$ /usr/bin/connect-standalone /etc/schema-registry/connect-avro-standalone.properties/etc/kafka-connect-jdbc/source-quickstart-mysql.properties
创建了一个名为的主题test-mysql-jdbc-
现在我创建消费者
$ /usr/bin/kafka-avro-console-consumer -–topic test-mysql-jdbc-students --zookeeper localhost:2181 --from-beginning
我成功地获得了 JSON 数据..
现在我所做的是我删除了 kafka 日志(删除了所有主题),但是当我重复相同的过程时,创建了同名的主题,但我没有在消费者中获得任何数据。如果我将其更改topic.prefix
为新的。我再次得到数据。请解释
解决方案
我认为可能有两种情况。
- 当您删除 Kafka 日志时,您正在删除控制和服务器日志而不是数据日志。
- 另一件事,删除 kafka 日志并不会真正删除 Kafka 主题。您必须
./kafka-topics.sh --zookeeper <IP>:<port> --delete --topic <topic_name>
与 server.properties 一起使用delete.topic.enable=true
。
使用--describe
选项验证。您可能会看到分配给 -1 的分区领导者或标记为删除的主题。
错误的主题元数据将不允许适当的偏移管理并阻碍主题消费。
推荐阅读
- reactjs - React Native TextInput 值不断刷新
- blogger - 如何在首页随机显示博主帖子?
- asp.net-core-2.0 - 将 .Net Core API 导入和部署到 Azure API 管理
- python - Python将对象添加到for循环迭代中的每个项目
- amazon-web-services - 从代码管道调用第三方 API 的最佳方式
- docker - 为什么 kuberntes 中的 docker 容器每隔几分钟退出并重新启动
- r - 酒吧和餐饮店的边界,ggplot
- sql - 如何匹配Oracle表中的对角线记录
- oracle - 为什么我们在spring boot的application.properties中没有提到像oracle这样的数据库时的驱动程序名称?
- java - java允许我将此对象分配给此通用字段吗?