Kafka分布式消息系统



什么是Apache kafka?

     系统应用用户的活动数据、请求数据、交互数据运行维护数据性能监测、服务器CPU指标这些大量的数据都在无时无刻的产生,Kafka便是有着一套成熟的消息处理方案的消息系统,支持高吞吐量的分布式发布订阅消息模式,它可以处理消费者规模的网站中的所有动作流数据也是Apache的顶级开源框架。

应用领域

     已被多家公司用作多类型的数据管道和消息系统,如淘宝、支付宝、百度等;并且一些大数据计算框架如笔者前面介绍的storm、spark都支持与kafka的集成。主要应用场景是kafka作为消息接受系统,将负责接收大量数据,传输给storm进行数据计算处理。

     具体在项目中的应用部署,kafka主要应用在数据计算框架和客户端请求中间,前端程序将消息push到Kafka 服务器集群的某一broker中,通过订阅模式,数据处理框架从Kafka中获取数据进行计算。

Kafka相关概念

AMQP协议:

     Advanced Message Queuing Protocol高级消息队列协议提供了消息交互规范,它和kafka或这rabbitMQ、activeMQ的关系就类如JPA规范和hibernate以及多个实现JPA规范的持久层框架一样。

kafka架构:

     Producer:消息生产者,负责发布消息到Kafka broker

     Broker :Kafka以集群的方式运行,可以由一个或多个服务组成,每个服务叫做一个broker.
     Consumer消息消费者,向Kafka broker读取消息。

kafka的消息分两个层次:

Topic:

     Kafka将消息以topic为单位进行组织如同生活中我们将消息分类为娱乐消息、体育消息、财经消息,kafka将一种消息类别组织为一个topic,一般系统以不同业务将消息进行topic划分。

Partition:

     一个topic中的消息数据按照多个分区进行组织,分区是kafka消息队列的最小组织单位。按照先进先出FIFO队列进行消息管理。

Kafka消息处理流程


评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值