Kafka消息队列 介绍
Kafka是由Apache软件基金会开发的一个开源流平台,由Scala和Java编写。Kafka的Apache官网是这样介绍Kakfa的。
Apache Kafka是一个分布式流平台。一个分布式的流平台应该包含3点关键的能力:
1.发布和订阅流数据流,类似于消息队列或者是企业消息传递系统
2.以容错的持久化方式存储数据流
3.处理数据流
一:消息队列的应用场景:
- 异步处理
- 系统解耦
- 流量削峰
- 日志处理(大数据领域常见)
二: Kafka模型
2.1点对点模式
2.2:发布订阅模式
三: Kafka的优势
1:单机呑吐量 万级(最差) 万级 十万级 十万级(最高)
2:消息延迟 - 微秒级 毫秒级
3:可用性 高(主从) 高(主从) 非常高(分布式)
4:消息丢失 - 低 理论上不会丢失
四: Kafka组件目录结构:
目录名称 说明
bin :Kafka的所有执行脚本都在这里。例如:启动Kafka服务器、创建Topic、生产者、消费者程序等等
config: Kaf