kafka日常操作记录

kafka-server-start.sh  -daemon /usr/local/kafka/config/server.properties > /dev/null 2>&1 &       #kafka启动(以守护模式启动kafka)
kafka-console-consumer.sh --bootstrap-server 192.168.3.100:9092 --topic test-haha-io --from-beginning   #消费者进行实时显示
kafka-producer-perf-test.sh --topic test-haha-io --num-records 100 --record-size 1 --throughput 100  --producer-props bootstrap.servers=192.168.3.100:9092  #kafka自带压测命令
kafka-console-producer.sh --version                                                     #kafka查看版本
kafka-topics.sh --create --zookeeper 172.31.18.18:2181 --replication-factor 1 --partitions 1 --topic test   #创建topic
kafka-topics.sh --list --zookeeper 172.31.18.18:2181        #查看kafka集群里的topic
kafka-consumer-groups.sh --bootstrap-server 172.31.18.18:9092 --list        #查看kafka集群里面的消费者组
kafka-consumer-groups.sh   --bootstrap-server 172.1.2.3:9092  --group test  --describe        #查看消费者组详情
kafka-console-consumer.sh  --zookeeper  172.31.18.18:2181 --topic test  --max-messages 5        #查看topic信息,最近五条
kafka-console-producer.sh --broker-list 172.31.18.18:9092 --topic test_abnormaldata        #进入topic生产消费信息
kafka-console-consumer.sh   --bootstrap-server 172.1.2.3:9092    --topic T2   --group test        #指定消费者组消费主题数据
kafka-console-consumer.sh --bootstrap-server 172.31.18.18:9092 --topic test_abnormaldata --consumer-property group.id=test_boatbed      #创建消费者组

kafka的理论知识

发布/订阅模式:一对多,消费者消费数据之后不会消除消息。
kafka是一个分布式的基于“发布/订阅模式”的消息队列,主要应用于大数据实时处理领域。
有一个长轮询,不停的去询问队列里面有没有新的消息。
leader ---> follower    ==   master ---> slave  不在同一台机器的
同一个消费者组里面的消费者不能去消费同一个消费数据
在创建topic(主题)时,副本数不能大超过机器数。

kafka的优势,它主要应用于2大类应用。

1、构建实时的流数据管道,可靠地获取系统和应用程序之间的数据。
2、构建实时流的应用程序,对数据流进行转换或反应。
3、消息可以传递给多个消费者。
4、消费者的消费速度可以由消费者自己来决定。

kafka的四个核心API

1、应用程序使用 Producer API 发布消息到1个或多个topic(主题)中。
2、应用程序使用 Consumer API 来订阅一个或多个topic,并处理产生的消息。
3、应用程序使用 Streams API 充当一个流处理器,从1个或多个topic消费输入流,并生产一个输出流到1个或多个输出topic,有效地将输入流转换到输出流。
4、Connector API 可构建或运行可重用的生产者或消费者,将topic连接到现有的应用程序或数据系统。例如,连接到关系数据库的连接器可以捕获表的每个变更。

kafka通信

Client和Server之间的通信,是通过一条简单、高性能并且和开发语言无关的TCP协议。

kafka使用的基本术语

Topic:   
    kafka将消息分门别类,每一类的消息称之为一个主题(topic)。
Producer:
    发布消息的对象称之为主题生产者(kafka topic producer)。
Consumer:
    订阅消息并处理发布的消息的对象称之为主题消费者(consumers)。
Broker:
    已发布的消息保存在一组服务器中,称之为kafka集群。集群中每一个服务器都是一个代理(Broker)。
    消费者可以订阅一个或多个主题(topic),并从Broker拉数据,从而消费这些已发布的消息。
Last modification:April 20th, 2020 at 09:57 am
如果觉得我的文章对你有用,请随意赞赏