kafka:高吞吐量分布式发布订阅式消息队列
kafka特性:
高吞吐量、低延迟:kafka每秒可以处理几十万条消息,延迟最低只有几毫秒。
可扩展性:kafka集群支持热扩展。
持久性、可靠性:消息被持久化到本地磁盘,并且支持数据备份,防止数据丢失。
容错性:允许集群中节点失败(最少有个副本本节点是好的)。
高并发:支持数千个客户端同时读写。
应用场景:
1、日志收集:收集各种服务的log,通过kafka以统一接口服务的方式开放给各种consumer。
2、消息系统:解耦和生产者和消费者、缓存消息
3、用户活动跟踪:记录用户的各种活动。
4、运营指标:记录运营监控数据。包括收集各种分布式应用的数据,生产各种操作的集中反馈,比如报警和报告。
5、流式处理数据源:比如spark streaming和strom。
kafka构架组件:
topic:消息存放的目录即主题
producer:生产消息到topic的一方
consumer:订阅topic消费消息的一方
broker:kafka的服务实例就是一个broker