Apache Pulsar的数据写入和读取流程,及读写异常处理流程
目录
- 1. 数据写入流程
- 2. 数据读取流程
- 3. 读写异常处理流程
1. 数据写入流程
说明: 写入操作客户端只和broker交互, 不和zookeeper和bookkeeper交互
- 客户端通过produce进行消息的发送
- produce基于内部的MessageWriter类进行分区操作。分区方法有round-robin(默认)、根据key进行hash分区、自定义分区
- produce连接partition对应的broker节点
- broker调用Bookkeeper客户端并发写多个副本到Bookie
- 当broker收到所有副本的ack确认之后, broker通知客户端消息已经被持久化完成
2. 数据读取流程
- consume连接broker,获取到读取消息的topic的分片所在的broker地址,然后连接该broker地址
- 如果消息在broker有缓存,将消息放入receiver队列,consume从队列读取;如果broker没有缓存,broker通过Bookeeper客户端从bookie的任意副本读取数据,返回给客户端
3. 读写异常处理流程
- produce产生失败:当出现网络原因等,在超时时间内进行重试一定次数
- broker端出现宕机:broker是无状态的。由其它broker继续提供服务
- Bookkeeper出现宕机:由其它副本提供消息读取服务
存储节点只负责数据存储, bookkeeper本身是一个集群, 故如果只挂掉一个bookie, 并不影响, 所以broker是不会感知的, 除非所有的bookie都挂掉, 没有足够的副本去写入数据. - consume产生失败:消息没有被consume进行ack确认,下次可以继续消费。也可以通过failover的subscription进行consume故障转移
Apache Pulsar的数据写入和读取流程,及读写异常处理流程相关推荐
- 蜗牛爱课- iOS中plist的创建,数据写入与读取
iOS中plist的创建,数据写入与读取功能创建一个test.plist文件 -(void)triggerStorage { NSArray *paths=NSSearchPathForDir ...
- python把数据写入excel_Python读取和写入Excel文件(转)
学习用Python处理Excel文件,这里主要用xlrd和xlwt模块,用前需要安装!本文是来自几篇博客和官网tutorial的整理,主要是一个入门.更多的处理Excel的方法请到官网学习,链接为:h ...
- NPOI Excel数据写入及读取
<1>这是一个一般应用程序 using System; using System.Collections.Generic; using System.Linq; using System. ...
- 潇洒郎: windows、centos学习Influxdb下载安装 重置用户、密码 influx语法 数据写入与读取、查询 修改默认启动端口
下载: Install InfluxDB | InfluxDB OSS 2.1 Documentation 新建文件influxd.bat cd %~dp0 influxd.exe 或 cd %~dp ...
- 项目动态|Apache Pulsar 2.10.0 版本介绍
本文翻译自 StreamNative 博客<What's New in Apache Pulsar 2.10>,作者为李鹏辉.Dave Duggins,原文地址为 https://stre ...
- 三十八. geotrellis使用 COG 写入和读取
前言 上一篇中简单介绍了 COG 的概念和 Geotrellis 中引入 COG 的原因及简单的原理,本文为大家介绍如何在 Geotrellis 中使用 COG 来写入和读取 GeoTIFF数据. 一 ...
- python中将数据写入excel
import xlwt MY_EXCEL = xlwt.Workbook(encoding='utf-8') # 创建MY_EXCEL对象 excelsheet = MY_EXCEL.add_shee ...
- Apache Iceberg核心原理分析文件存储及数据写入流程
点击上方蓝色字体,选择"设为星标" 回复"面试"获取更多惊喜 全网最全大数据面试提升手册! 第一部分:Iceberg文件存储格式 Apache Iceberg作 ...
- hbase集群 数据写入_一种构建HBase集群全文索引方法,数据读取方法以及数据写入方法与流程...
本发明涉及HBase集群领域,尤其涉及一种构建HBase集群全文索引方法,数据读取方法以及数据写入方法. 背景技术: 随着云计算技术的不断发展,云计算技术不断落地成为支撑各行业信息技术发展的重要支柱. ...
最新文章
- Vue开发入门看这篇文章就够了
- 快速提升网站收录量的技巧有哪些?
- Python基础之:Python中的模块
- 搜索引擎提交软件_增加SEO超级外链须知的高权重网站目录提交方法
- linux之head命令
- 服务器安装mysql要密码_在阿里云服务器上安装mysql及重置密码
- SQLite学习手册
- 文件fluent_Win10 中解决FLUENT中UDF 的方法
- 动态传参, 名称空间, 嵌套, gloabal, nonlocal
- PAT 1059 Prime Factors[难]
- 软考网络工程师第一章复习
- PMP®考试通过率多少
- 哔哩哔哩助手V0.8.16.28
- android手机 联系人迁移,有什么软件能快速将手机通讯录的联系人传到另一个手机上...
- pandas数据清洗的一些操作
- 2020仙气十足的女生个性网名
- 2022年茶艺师(中级)考试题库模拟考试平台操作
- 【单片机笔记】运放电流检测实用电路
- 【编程语言】计算机编程语言
- 本地RTMP流媒体服务器搭建拉流简易版
热门文章
- Java truelicense 实现License授权许可和验证
- 自爆神舟电脑为什么便宜,明眼人可以看懂。
- CSS3动画实现高亮光弧效果,循环闪动效果
- 视频相关十大开源项目
- 插槽和axios的封装
- 网络安全- 专访丨互联网安全城市巡回赛冠军肖策:“大满贯”背后的秘密
- aliyun-freeSSL证书生成、下载、配置到apache httpd
- Halium 9 尝鲜 -- 在小米平板4上的移植 (一)
- cuda编译错误 ptxas fatal : Unresolved extern function xxxx
- 美团住宿业务数据治理体系化思考与实践