jck28 - 小柒 - MQ - Message Queue消息队列和kafka基本使用

一,简介

  • 消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,有消息系统来确保信息的可靠专递,消息发布者只管把消息发布到MQ中而不管谁来取,消息使用者只管从MQ中取消息而不管谁发布的,这样发布者和使用者都不用知道对方的存在。
    image

    • Producer:消息生产者,负责产生和发送消息到 Broker;
    • Broker:消息处理中心。负责消息存储、确认、重试等,一般其中会包含多个 queue;
    • Consumer:消息消费者,负责从 Broker 中获取消息,并进行相应处理;

二,Kafka常见使用命令

1,登录

  • 登录机器ip :10.177.250.131 登录名 ads 密码 adsxxx
  • 进入bin目录 : cd /web/ads/fuxi/kafka_2.13-2.6.0/bin/

2,常用命令(在bin目录下)

  • 创建topic

    • ./kafka-topics.sh --create --replication-factor 2 --partitions 16 --zookeeper 10.177.56.31:2181/fuxi-kafka-dongguan-1 --topic ${topicName}
  • 查看topic列表

    • ./kafka-topics.sh --zookeeper 10.177.56.31:2181/fuxi-kafka-dongguan-1 --list
    • fuxi-kafka-dongguan-1 为集群名称
    • 示例:./kafka-topics.sh --list --bootstrap-server 10.177.56.41:9092,10.177.56.40:9092,10.177.56.39:9092
  • 发布消息

    • ./kafka-console-producer.sh --broker-list 10.177.56.41:9092,10.177.56.39:9092 --topic ${topicName}
  • 消费topic

    • ./kafka-console-consumer.sh --bootstrap-server 10.177.56.41:9092,10.177.56.39:9092 --topic ${topicName}

    • ${KAFKA_HOME}/bin/kafka-console-consumer.sh --bootstrap-server 10.177.56.41:9092,10.177.56.39:9092 --topic ${topicName} ——不在bin目录下,需要加上对应的路径地址

    • 示例说明 : ./kafka-console-consumer.sh --bootstrap-server 10.177.56.41:9092,10.177.56.40:9092,10.177.56.39:9092 --from-beginning --topic cpd-srh-dwn |grep 869118030981799 ( --from-beginning表示查看该topic下的所有消费信息)