【中间件学习】kafka基础学习

引言

kafka是一款优秀的消息中间件,在数据接入的过程用,由于特定场景需要采集某种日志并将其入库,使用到该中间件,这里记录学习过程。
典型使用场景:
收集日志 —> 日志正则化 —> 发送到kafka --> 入库

安装教程

记录简易的安装过程

wget http://mirrors.aliyun.com/apache/kafka/3.2.2/kafka_2.12-3.2.2.tgz

解压文件

tar -xvf kafka_2.12-3.2.1.tgz
wget http://mirrors.aliyun.com/apache/kafka/3.2.2/kafka_2.12-3.2.2.tgz

执行下面命令,启动zk

bin/zookeeper-server-start.sh config/zookeeper.properties

发现没有java,无法启动,这里需要安装一下java, 下载解压后, 核心的配置步骤如下:
其中 /opt/jdk 为手工指定的解压后的文件夹名称。

export JAVA_HOME=/opt/jdk
export JRE_HOME=/opt/jdk/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

执行下面命令, 启动kafka

bin/kafka-server-start.sh config/server.properties

kafka的简单使用教程

记录简易的使用教程

  • 如何创建一个topic?
    让我们创建一个名为“test”的topic,它有一个分区和一个副本
bin/kafka-topics.sh --create --bootstrap-server localhost:2181 --replication-factor 1 --partitions 1 --topic test
  • 如何查看已经创建的topic
bin/kafka-topics.sh --list --bootstrap-server localhost:2181
  • 如何发送和接收消息
    发送消息:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test ./config/producer.properties

接收消息:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
  • 如何实现kafka之间的信息传递?
    参考文档: https://blog.csdn.net/tmaczt/article/details/115274144
bin/kafka-mirror-maker.sh --consumer.config config/consumer-test.properties --producer.config config/producer-test.properties --num.streams 8 --whitelist 'customer.order*'

你可能感兴趣的:(技术分享,kafka,中间件,学习)