kafka简介和Streaming-kafka
高吞吐的分布式消息系统,默认存储磁盘,默认保存7天
时间策略删除,kafka和很多消息系统不一样,很多消息系统是消费完了我就把它删掉,而kafka是根据时间策略删除,而不是消费完就删除,在kafka里面没有一个消费完这么个概念,只有过期这样一个概念
特点
系统之间解耦合
峰值压力缓冲
异步通信(消息队列)
生产者消费者模式,FIFO
高性能 吞吐量大
持久性 磁盘,顺序读写
分布式 副本,可扩展
时间/offset灵活 7天,读取位置
消息队列特点
可靠性:
自己不丢数据–不经过内存直接存入磁盘(0拷贝),保存数据7天
消费者不丢数据–至少一次
架构组成
producer 消息生产者,两种机制,1基于轮询,2key的Hash,若key为空则只能轮询写
broker 组成kafka集群的节点,broker间没有主从关系,依赖于ZK协调
broker负责消息的读写和存储,每个broker可以管理多个partition
topic 一类消息/消息队列
每个topic是由多个partition组成,可指定数量
partition 组成topic的单元,直接接触磁盘,消息是append到每个partition上的