Kafka快速入门

一.简介

  Kafka是由Apache软件基金会开发的一个开源流处理平台,由ScalaJava编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。

二..架构

  producer:消息生产者

  consumer:消息消费者

  broker:Kafka集群的servevr,负责处理消息读、写请求,存储数据

  topic:消息队列、分类

三.特点

  1.一个topic分成多个partition【提高并行度】

  2.每个partition内部消息强有序【FIFO】,其中的每个消息都有一个序号叫offset【偏移量】

  3.一个partition只对应一个broker,一个broker可以管理多个partition

  4.消息直接写入文件,并不是保存在内存中【NIO:不经过用户内存,直接写入磁盘】

  5.默认【一周】根据时间策略删除数据,而不是消费完就删除  

  6.producer自己决定往哪个partition写消息,可以基于轮询【负载均衡】策略,或者基于hash策略

  7.consumer自己维护消费到哪个offset

  8.每个consumer都有对应的group,每个consumer消费不同的partition,一个消息在group内只消费一次

  9.每个group各自独立,互不影响

  10.高性能,单节点支持上千个客户端,百MB/s吞吐

  11.分布式,数据副本冗余,流量负载均衡,可扩展

  备注:零拷贝

  

四.Kafka与其它消息队列比较

  1.RabbitMQ:分布式,支持多种MQ协议,重量级

  2.ActiveMQ:与RabbitMQ类似

  3.ZeroMQ:以库的形式提供,使用复杂,无持久化

  4.Redis:纯内存性能好,持久化较差

转载于:https://www.cnblogs.com/yszd/p/10549199.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值