目录
六 . Kafka 之所以具有高速的读写性能,主要有以下几个原因
一 . 消息队列
应用场景:
应用解耦合:类似单点故障
异步处理: 减少处理时间
限流削峰 : 不管流量多大,放到消息队列中,都是按照一定的节奏进行处理
消息驱动的系统: 消息队列,消息生产者,消费者(负责对消息进行处理)
消息(message): 指的是数据,只不过这个数据存在一定流动状态
队列(queue): 指的容器,可以存储数据,只不过这个容器具备FIFO(先进先出)特性
消息队列中两个角色:
生产者producer:生产/发送消息到消息队列中
消费者consumer: 从消息队列中获取消息
二. Kafka
1. 基本介绍
kafka是一款消息队列的中间件产品;
kafka特点:
可靠性
可扩展性
耐用性
性能
2. kafka架构
1. Kafka中集群节点叫broker ;
2. 集群的节点与节点之间,没有主从之分 ;
3. 同一个分区的不同副本间中, 有主从关系 ,主是leader , 从是Follower
4. 同一个Partitions分区可以设置多个副本 , 但是副本数量不能超过集群broker节点的个数
5. zookeeper用来管理集群,以及管理元数据信息
6. Topic 主题 ,是业务层面对消息进行分类的
三 . 启动命令
三台虚拟机启动Zookeeper
cd /export/server/zookeeper/bin
./zkServer.sh start
node1脚本启动kafka
cd /export/onekey
./start-kafka.sh
./stop-kafka.sh
四 . Kafka的Shell 命令
1. 创建Topic
./kafka-topics.sh --bootstrap-server node1.itcast.cn:9092,node2.itcast.cn:9092 --create --topic test02 --partitions 4 --replication-factor 2
参数:
-- bootstrap-server: Kafka集群中broker连接信息
-- create : 指定操作类型 .这里是新建Topic
-- topic: 指定要新建的Topic名称
-- partitions :设置Topic的分区数
-- relication-factor :设置Topic分区的副本数
2. 查看Topic
./kafka