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 端口。
相关推荐
程序员天天困2 小时前
Kafka 接入 AI 的三条路线:MCP 提案、会话记忆与实时上下文
大数据·后端·kafka
懂软件的胡子个哥7 小时前
微信工单系统如何基于 WechatApi 做消息分流和状态流转
运维·分布式·微信·架构·企业微信
九皇叔叔1 天前
从本地事务到分布式事务
java·分布式·分布式事务·cap·base
hey you~1 天前
云客服多渠道统一接入,消息队列技术实现方案
kafka·消息队列·rocketmq·系统集成·云客服·多渠道接入·接口对接
刃神太酷啦1 天前
Redis 核心进阶:哨兵、集群、缓存问题与分布式锁详解----《Hello Redis!》(6)
linux·c语言·数据库·c++·redis·分布式·缓存
海宇大数据1 天前
分布式网关架构实战:基于海宇数据公安二要素认证即时版构建自动化司机准入网关
人工智能·分布式·架构·自动化
雾隐隐o1 天前
Kafka 消费者消息丢失:Offset 原理与解决方案
kafka
木圭的AI时代指南2 天前
Spark-X2.5 长输入 Agent 实测:全量读取陷阱与解释器寻找死循环复盘,附可复现任务
大数据·分布式·spark
KANGBboy2 天前
doris+kafka安装部署(单机+集群)二时钟服务器 java_home
服务器·分布式
爱笑的k112 天前
分布式通信原语
分布式·ai infra