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 的数字,例如 23
  6. --zookeeper 110.40.130.231:2181:

    • 这个选项指定了 ZooKeeper 的地址和端口。
    • ZooKeeper 是一个分布式协调服务,Kafka 使用它来管理集群的元数据,包括主题、分区和副本的信息。
    • 110.40.130.231 是 ZooKeeper 服务器的 IP 地址,2181 是默认的 ZooKeeper 端口。
相关推荐
ffqws_2 小时前
Redis 分布式锁:基于 Redisson 的实现与面试高频问答
redis·分布式·面试
六bring个六8 小时前
open Harmony中分布式软总线的学习任务清单
分布式·学习·c/c++·open harmony
wuqingshun3141598 小时前
说一下 Kafka 中关于事务消息的实现?
分布式·kafka
名字还没想好☜13 小时前
用 Redis + Redisson 实现分布式锁:从踩坑到生产可用
java·redis·分布式·junit·分布式锁·redisson
qiu_lovejun99813 小时前
linux安装docker和redis和rabbitmq和nginx和rocketmq和kafka
linux·redis·docker·kafka·rabbitmq·rocketmq
董可伦14 小时前
Spark 源码 | SparkSubmitArguments 参数解析(三)
大数据·分布式·spark
运维行者_15 小时前
广域网性能监控:分布式IT架构下的链路质量保障
开发语言·网络·分布式·后端·架构·数据库架构
她说可以呀15 小时前
RabbitMQ Confirm与Returns模式
分布式·rabbitmq
Mr__Miss16 小时前
Session、Cookie、JWT 详解:从单体到分布式的认证方案演进
分布式
Database_Cool_16 小时前
阿里云 PolarDB-X vs OceanBase 国产分布式数据库深度对比
分布式·阿里云·oceanbase