kafka汇总
Kafka 1. kafka概念 kafka是一个高吞吐亮的、分布式、基于发布/订阅(也就是一对多)的消息系统,最初由Linkedln公司开发的,使用Scala语言编写的,目前是Apache的开源项目。 消息队列: 1> 原理 客户端消费Queue的数据优良种方式: 发布/订阅模式:也就是一对多,数据产生后,推给所有的订阅者。 点点对点模式:也就是一对一,这个是主动模式,第一种模式更像是被动模式,这个就是消费者主动拉取生产后的数据。 2> 消息队列的优点: 解耦2.冗余3.扩展性4.灵活性和峰值处理能力5.可恢复性6.顺序保证(kafka保证一个partition内的数据是有序的)7.缓冲8.异步通信 kafka的基本术语 topic:消息类别,kafka按照topic来分类消息。可以理解成一个队列,一个topic里有多个partition。 broker:kafka服务器,负责消息的存储与转发。一台kafka服务器就是一个broker,一个集群有多个broker,一个broker可以有多个topic。 partition:topic的一个分区,一个topic可以包含多个partition,topic消息保存在各个partition上。 offset:消息在日志中的位置,可以理解是消息在partition上的偏移量,也是代表消息的唯一序号。 producer:消息生产者