【kafka 】基本使用方法
kafka基本使用
1.1kafka是什么有什么作用
kafka不仅仅是一款开源的消息引擎(System Messaging)系统,而且是一个分布式流处理平台(Distributed Streaming Platform)
1.1.1 消息引擎
消息引擎模型:
- 点对点模型
- 发布订阅模型
消息引擎消息格式(消息的编码方式)
- CSV,XML,Json,Protocol Buffer Thrift
- kafka选择的是二进制
说起消息引擎就不得不说大名鼎鼎的JMS(Java Message System),JMS仅仅是一组API规范但是因为它太过于出名和努都主流的消息引擎都支持JMS规范例如:ActiveMQ,RabbitMQ,kafka等等,但是kafka并未完全遵照JMS规范。
1.1.2 Distributed Steraming Platform
是一款分布式流处理平台,是kafka1.0和2.0版本刚刚完善的一个新功能。
1.2 kafaka docker环境搭建
安装server端
#1.docker 拉取 zookeeper 和kafka 景象
docker search container_name
#2.拉取你需要的容器 默认最新版本
docker pull container_name
#3.启动容器 首先启动zk 然后启动kafka容器
docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper
#4.启动kafka容器
#先简单的介绍一下这几个参数 下边后仔细说明 KAFKA_ZOOKEEPER_CONNECT:zk地址
#KAFKA_LISTENERS 监听器 告诉外部系统用什么协议和主机号端口去访问开放的kafka服务
# KAFKA_ADVERTISED_LISTENERS advertised:空开的。这组监听器是Broker 公开对外暴露的
docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0
-e KAFKA_ZOOKEEPER_CONNECT=192.168.1.7:2181
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.7:9092
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
进入kafka容器进行基本操作
#进入kafka容器
docker exec -ti kafka(containerName or containerId) /bin/bash
#创建主题 test
bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
#查看有多少主题
bin/kafka-topics.sh --list --bootstrap-server localhost:9092
#查看当前主题详情
bin/kafka-topics.sh --describe --bootstrap-server localhost:9092 --topic test
#主题详情如下
# Topic:test PartitionCount:1 ReplicationFactor:1 Configs:segment.bytes=1073741824
# Topic: test Partition: 0 Leader: 0 Replicas: 0 Isr: 0
#Isr 存活着的replicas
#发送消息 创建producer端
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
#接收消息 常见consumer端
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
1.3 kafka集群环境搭建及其使用
#集群kafka操作 setting up a muliti-broker cluster KAFKA_BROKER_ID kafka在进群中的唯一标示不能重复
docker run -d --name kafka2 -p 9093:9093 -e KAFKA_BROKER_ID=1
-e KAFKA_ZOOKEEPER_CONNECT=192.168.1.7:2181
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.115.209:9093
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093 -t wurstmeister/kafka
#创建一个两个副本两个分区的Topic
bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 2 --partitions 2 --topic test2
#主题详情如下
# Topic:my PartitionCount:2 ReplicationFactor:2 Configs:segment.bytes=1073741824
# Topic: my Partition: 0 Leader: 0 Replicas: 0,1 Isr: 0
#Isr 还在活着的副本 说明partitin1挂了
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/taneiki
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
photoshop蒙版画笔没反应怎么办
PHP中文网 06-24