kafka消息中间件-学习笔记
内容来源:https://www.cnblogs.com/qingyunzong/p/9004509.html
1.2 消息系统介绍
一个消息系统负责将数据从一个应用传递到另外一个应用,应用只需关注于数据,无需关注数据在两个或多个应用间是如何传递的。分布式消息传递基于可靠的消息队列,在客户端应用和消息系统之间异步传递消息。有两种主要的消息传递模式:点对点传递模式、发布-订阅模式。大部分的消息系统选用发布-订阅模式。Kafka就是一种发布-订阅模式。
1.3 点对点消息传递模式
1、生产者发送一条消息到queue
2、一条消息只能被消费一次。当一个消费者消费了队列中的某条数据之后,该条数据则从消息队列中删除
3、即使有多个消费者同时消费数据,也能保证数据处理的顺序
1.4 发布-订阅消息传递模式
1、发布者发送到topic的消息
2、消费者可以订阅一个或多个topic,
3、同一条数据可以被多个消费者消费,数据被消费后不会立马删除
四、Kafka中的术语解释
4.2 broker
Kafka 集群包含一个或多个服务器,服务器节点称为broker。
broker存储topic的数据。1、topic中的最小单位是partition;2、每个broker中存储一个或多个partition;3、partition在broker中尽量均匀分部。
4.3 Topic和partition
每条发布到Kafka集群的消息都有一个类别,这个类别被称为Topic。(物理上不同Topic的消息分开存储,逻辑上一个Topic的消息虽然保存于一个或多个broker上但用户只需指定消息的Topic即可生产或消费数据而不必关心数据存于何处)
topic中的数据分割为一个或多个partition。每个topic至少有一个partition。每个partition中的数据使用多个segment文件存储。
partition中的数据是有序的,不同partition间的数据是无序的。
在需要严格保证消息的消费顺序的场景下,需要将partition数目设为1。
4.7 Leader
每个partition有多个副本,其中有且仅有一个作为Leader,Leader是当前负责数据的读写的partition。
4.8 Follower
Follower跟随Leader,所有写请求都通过Leader路由,数据变更会广播给所有Follower,Follower与Leader保持数据同步。如果Leader失效,则从Follower中选举出一个新的Leader。当Follower与Leader挂掉、卡住或者同步太慢,leader会把这个follower从“in sync replicas”(ISR)列表中删除,重新创建一个Follower。
1.2 Kafka的使用场景:
Kakfa Broker集群受Zookeeper管理
所有的Kafka Broker节点一起去Zookeeper上注册一个临时节点,因为只有一个Kafka Broker会注册成功,其他的都会失败,所以这个成功在Zookeeper上注册临时节点的这个Kafka Broker会成为Kafka Broker Controller,其他的Kafka broker叫Kafka Broker follower。
kafka消息中间件-学习笔记相关推荐
- 尚硅谷Kafka框架学习笔记
视频地址:https://www.bilibili.com/video/BV1a4411B7V9 笔记资料:链接: https://pan.baidu.com/s/17XOeCBYdyfNqWJPxb ...
- 《Apache Kafka》学习笔记
1.什么是Kafka Kafka是一个高通过率的分布式消息系统 2.消息队列(Message Queue)MQ的模型 消息队列的简单架构图 3个核心概念: Sender Application:消息队 ...
- kafka streams学习笔记
流式处理 流式处理是利用连续计算来处理无限数据流的能力,因为数据流是流动的.所以无须收集或存储数据以对其进行操作 这个弹珠图是流式处理的一个简单表示.图中每个圆圈代表某一特定时间点的某些信息或发生的事 ...
- Kafka入门篇学习笔记整理
Kafka入门篇学习笔记整理 Kafka是什么 Kafka的特性 应用场景 Kafka的安装 单机版部署 集群部署环境准备 Kafka 2.x集群部署 Kafka 3.x集群部署 监听器和内外网络 K ...
- Kafka学习笔记(一):什么是消息队列?什么是Kafka?
目录 一.消息队列的概述 (一)前置知识点 1.集群和分布式 2.队列(Queue)的含义 3.同步与异步的含义 (二)消息队列的含义与特点 二.Kafka (一) 概述 (二) 常用名词含义 导航栏 ...
- 大数据 -- kafka学习笔记:知识点整理(部分转载)
一 为什么需要消息系统 1.解耦 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束. 2.冗余 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险.许多 ...
- Kafka学习笔记(3)----Kafka的数据复制(Replica)与Failover
1. CAP理论 1.1 Cosistency(一致性) 通过某个节点的写操作结果对后面通过其他节点的读操作可见. 如果更新数据后,并发访问的情况下可立即感知该更新,称为强一致性 如果允许之后部分或全 ...
- kafka学习笔记(四) --- 压缩算法面面观
kafka中,压缩,说白了就是,以较少的CPU开销去换更少的磁盘占用或更少的网络I/O传输. 怎么压缩 kafka的消息格式分为两种,社区分别成为V1版本和V2版本,V2版本是在0.11.0.0中正式 ...
- sheng的学习笔记-kafka框架原理
目录 环境搭建 下载安装包 修改配置文件 启动服务 创建topic 生产消息 消费消息 代码 maven配置 kafka的生产者代码 消费者代码 基础知识 主题TOPIC: 单播和多播 单播消息: 多 ...
最新文章
- 基于 Redis 的分布式锁到底安全吗?
- 语义化,让你的网页更好的被搜索引擎理解
- 数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历(BFS)
- 图片轮播器,relativelayout,外加textview小结
- Python Flask服务同时接收单个、多个上传的文件
- python更改数据框指定位置的数据_python-如何使用来自另一个数据框的新值更新pyspark数据框?...
- 导入项目jsp文件报错,但打开相应的文件并没有错误解决办法
- 分享好用的Mac系统的FTP工具和SHELL工具
- Ubuntu18.04、Ubuntu20.04之ROS安装教程
- 横向合计代码 锐浪报表_报表开发常见问题解答 - 锐浪报表工具
- java游戏管理器 闪退_手游频繁崩溃”闪退”? 从程序上找原因
- CSS 多列等高的几种实现方式
- 十三、买空卖空、融资融券、配资与杠杆
- 圆角装饰条_护角条是圆角好还是直角好
- C/C++语言100题练习计划 84——分数线划定(结构体+快排函数)
- 她等待刀尖已经太久--茨维塔耶娃诗抄
- 注册Netgear DDNS账号的操作
- 如何使用统计显着性检验来解释机器学习结果
- linux内核 社区,明尼苏达大学Linux内核“伪装者提交”研究人员发表公开信
- 显示器的秘密武器——主流显示器工厂模式进入方法全析
热门文章
- 【FaceBook系列二】再见了,Facebook_scraper?Python的session请求获取Facebook的群组数据。
- 使用新版webstorm和Chrome配合,实现实时刷新,可以边写代码边看效果
- 软件设计师——数据流图设计(下午试题一)
- 如何使用flatMap
- ACM练级日志:Level 3的线段树标记下传
- ACM练级日志: CodeForces 414C 归并排序、逆序数和栈内存
- nagios利用snmp监控路由器端口状态问题
- java解压,压缩.gz文件
- 给大家推荐一款免费虚拟主机 优豆云
- linux系统中socket错误码:EINTR和EAGAIN的处理