kafka测试

1】确认 ZooKeeper 服务状态

为了进一步确认 ZooKeeper 服务的状态,你可以执行以下操作:

  1. 检查 ZooKeeper 服务状态:

    bash 复制代码
    docker ps

    确保 ZooKeeper 容器正在运行。

  2. 检查 ZooKeeper 日志:

    bash 复制代码
    docker logs zookeeper

    查看最新的日志条目,确保没有新的错误或警告信息。

  3. 测试 ZooKeeper 连接:

    使用 nc(Netcat)来测试 ZooKeeper 服务是否可以连接:

    bash 复制代码
    docker exec -it kafka /bin/sh
    nc -zv 110.40.130.231 2181

    如果连接成功,你会看到类似以下的输出:

    bash 复制代码
    Connection to 110.40.130.231 2181 port [tcp/*] succeeded!

2】确认 Kafka 服务状态

若ZooKeeper 服务已经正常运行,再认 Kafka 服务的状态:

  1. 检查 Kafka 服务状态:

    bash 复制代码
    docker ps

    确保 Kafka 容器正在运行。

  2. 检查 Kafka 日志:

    复制代码
    docker logs kafka

    查看最新的日志条目,确保没有新的错误或警告信息。

  3. 测试 Kafka 生产和消费消息:

    使用 Kafka 的命令行工具来测试生产者和消费者的连接。首先,进入 Kafka 容器:

    复制代码
    docker exec -it kafka /bin/sh

    然后,创建一个测试主题:

    bash 复制代码
    /opt/kafka/bin/kafka-topics.sh --create --topic test-topic --partitions 1 --replication-factor 1 --zookeeper 110.40.130.231:2181

    发送一些测试消息:

    复制代码
    /opt/kafka/bin/kafka-console-producer.sh --broker-list 110.40.130.231:9092 --topic test-topic

    在另一个终端窗口中,启动一个消费者来接收消息:

    bash 复制代码
    docker exec -it kafka /bin/sh
    /opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server 110.40.130.231:9092 --topic test-topic --from-beginning

    如果一切正常,在消费者端看到生产者发送的消息。


复制代码
/opt/kafka/bin/kafka-topics.sh --create --topic test-topic --partitions 1 --replication-factor 1 --zookeeper 110.40.130.231:2181

详细解释

  1. /opt/kafka/bin/kafka-topics.sh:

    • 这是 Kafka 提供的命令行工具之一,用于管理和操作 Kafka 主题。
    • 路径 /opt/kafka/bin 是 Kafka 安装目录下的 bin 目录,其中包含了各种 Kafka 命令行工具。
  2. --create:

    • 这个选项表示要创建一个新的主题。
    • 其他常用选项包括 --list(列出所有主题)、--describe(描述特定主题的详细信息)、--delete(删除主题)等。
  3. --topic test-topic:

    • 这个选项指定了要创建的主题的名称。
    • test-topic 是选择的主题名称,你可以根据需要将其替换为任何其他名称。
  4. --partitions 1:

    • 这个选项指定了主题的分区数。
    • 分区是 Kafka 中的一个重要概念,用于实现水平扩展和并行处理。每个分区可以独立地存储和处理消息。
    • 在这个例子中,1 表示该主题将只有一个分区。
  5. --replication-factor 1:

    • 这个选项指定了主题的副本因子。
    • 副本因子决定了每个分区的数据在多少个不同的 Kafka 代理(broker)上进行复制,以提高可用性和容错性。
    • 在这个例子中,1 表示每个分区只有一个副本,这意味着没有冗余备份。如果你希望增加冗余,可以将此值设置为大于 1 的数字,例如 2 或 3。
  6. --zookeeper 110.40.130.231:2181:

    • 这个选项指定了 ZooKeeper 的地址和端口。
    • ZooKeeper 是一个分布式协调服务,Kafka 使用它来管理集群的元数据,包括主题、分区和副本的信息。
    • 110.40.130.231 是 ZooKeeper 服务器的 IP 地址,2181 是默认的 ZooKeeper 端口。
相关推荐
Deng桑14 小时前
分布式锁与幂等
分布式
Flynn Liang16 小时前
物联网时序数据乱序问题全链路治理:从设备到存储的五层实战(附 Flink/Kafka/IoTDB 配置级代码)
flink·kafka·iot·iotdb·emqx·乱序·时序数据
wifi___17 小时前
Redis分布式锁
数据库·redis·分布式
方方洛20 小时前
ray教程-15-RayServe与LLM服务
人工智能·分布式·机器学习
m0_6399069421 小时前
MySQL 实现分布式锁:悲观锁、乐观锁、唯一索引锁
数据库·分布式·mysql
T量子永生1 天前
Android SISO 分布式编译集群配置方案
android·分布式·云计算·源代码管理
starzy19901 天前
Kafka响应发送:字节是怎么真正写回客户端的
大数据·kafka
KaiwuDB1 天前
KaiwuDB 分布式集群扩缩容,从原理到完整操作踩坑总结
运维·数据库·分布式
泡海椒2 天前
深度解析JQuick-SQL AST到逻辑计划转换机制|分布式SQL原理
数据库·分布式·sql
阳光不锈@2 天前
三大主流消息队列架构设计思想剖析:从 RabbitMQ 到 RocketMQ 的改造实践
kafka·rabbitmq·rocketmq·rabbit改造rocket·去除rabbitmq·rabbitmq改造