Kafka的能力
- kafka 近实时的消息处理能力
- kafka 消息存放在磁盘中(系统发生故障数据不丢失)
- kafka 以顺序读写的方式访问磁盘
- kafka 支持批量读写消息,并会对消息进行压缩,提高网络利用率,提高了压缩效率
- kafka 支持在线增加分区,支持在线水平扩展
- kafka 支持为每个分区创建多个副本,有一个Leader副本负责读写,其它副本只负责与Leader副本进时同步
- kafka consumer 水平扩展(让多个consumer加入一个Consumer Group)
Kafka的应用场景
- 作为消息中间件,实现消息队列和消息的发布/订阅 (rabbitmq/activemq)
- 作为系统中的数据总线(传输数据的通道)
- 日志收集中心,多个系统的日志统一收集到Kafka中,然后由数据分析平台进行统一处理与分析(日志会持久化到磁盘),支持离线数据与实时数据处理
- 基于kafka设计数据库主从同步的工具
- app/web 埋点数据收集,然后用于数据分析
- 用于系统之间解耦合(基于以上功能),系统演变的复杂,与困难,用kafka解耦 甩掉包袱
系统之间职责明确,轻装前行,对系统的强大支撑,职责明确后,方便硬件扩展,系统特色
显现
7. 系统灾备与扩容(扩容6描述内容)
8. 消息处理中的 缓冲&峰值处理能力(削峰能力)
9. 异步通信