栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Kafka:第一章:基本概念以及安装Kafka,单播模式和多播模式

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Kafka:第一章:基本概念以及安装Kafka,单播模式和多播模式

文章目录
  • 一、Kafka是什么?
  • 二、安装kafka
  • 三、基本概念
  • 四、单播模式和多播模式

一、Kafka是什么?

定义:Kafka是一个基于zookeeper协调的分布式、多副本的(replica)、支持分区的(partition)系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、Storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等,用scala语言编写的项目。


二、安装kafka

Kafka是用Scala语言开发的,运行在JVM上,在安装Kafka之前需要先安装JDK。

yum install java-1.8.0-openjdk* -y

kafka依赖zookeeper,所以需要先安装zookeeper

docker pull zookeeper
docker run --privileged=true -d --name zookeeper --publish 2181:2181  -d zookeeper:latest

安装kafka

docker pull wurstmeister/kafka
docker run -itd --name ag_kafka_v1 -p 192.168.48.128:6667:6667 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.48.128:2181/kafka -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.48.128:6667 -e KAFKA_LISTENERS=PLAINTEXT://192.168.48.128:6667 --network ag_net wurstmeister/kafka /bin/bash
docker exec -it ag_kafka_v1 /bin/bash
find / -name server.properties
/opt/kafka_2.13-2.7.1/config/server.properties
vi /opt/kafka_2.13-2.7.1/config/server.properties
	#broker.id属性在kafka集群中必须要是唯一
	broker.id=0
	#kafka部署的机器ip和提供服务的端口号
	listeners=PLAINTEXT://192.168.48.128:9092   
	#kafka的消息存储文件
	log.dir=/temp/kafka-logs
	#kafka连接zookeeper的地址
	zookeeper.connect=192.168.48.128:2181
保存退出:wq
退出容器:exit
docker restart ag_kafka_v1

三、基本概念
  • Broker:消息中间件处理节点,一个Kafka节点就是一个broker,一个或者多个Broker可以组成一个Kafka集群。
  • Topic:Kafka根据topic对消息进行归类,发布到Kafka集群的每条消息都需要指定一个topic。
  • Producer:消息生产者,向Broker发送消息的客户端。
  • Consumer:消息消费者,从Broker读取消息的客户端。
  • ConsumerGroup:每个Consumer属于一个特定的ConsumerGroup,一条消息可以被多个不同的Consumer Group消费,但是一个ConsumerGroup中只能有一个Consumer能够消费该消息。
  • Partition:物理上的概念,一个topic可以分为多个partition,每个partition内部消息是有序的。

说明:producer通过网络发送消息到Kafka集群,然后consumer来进行消费,服务端(brokers)和客户端(producer、consumer)之间通信通过TCP协议来完成。


四、单播模式和多播模式

单播消费
一条消息只能被某一个消费者消费的模式,类似queue模式,只需让所有消费者在同一个消费组里即可
分别在两个客户端执行如下消费命令,然后往主题里发送消息,结果只有一个客户端能收到消息。

多播消费
一条消息能被多个消费者消费的模式,类似publish-subscribe模式费,针对Kafka同一条消息只能被同一个消费组下的某一个消费者消费的特性,要实现多播只要保证这些消费者属于不同的消费组即可。我们再增加一个消费者,该消费者属于testGroup-2消费组,结果两个客户端都能收到消息。


# 总结 提示:这里对文章进行总结: 例如:以上就是今天要讲的内容,本文介绍了kafka的基本概念以及安装流程,单播模式和多播模式
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/358468.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号