目录

  • 1. 数据写入流程
  • 2. 数据读取流程
  • 3. 读写异常处理流程

1. 数据写入流程

说明: 写入操作客户端只和broker交互, 不和zookeeper和bookkeeper交互

  1. 客户端通过produce进行消息的发送
  2. produce基于内部的MessageWriter类进行分区操作。分区方法有round-robin(默认)、根据key进行hash分区、自定义分区
  3. produce连接partition对应的broker节点
  4. broker调用Bookkeeper客户端并发写多个副本到Bookie
  5. 当broker收到所有副本的ack确认之后, broker通知客户端消息已经被持久化完成

2. 数据读取流程

  1. consume连接broker,获取到读取消息的topic的分片所在的broker地址,然后连接该broker地址
  2. 如果消息在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的数据写入和读取流程,及读写异常处理流程相关推荐

  1. 蜗牛爱课- iOS中plist的创建,数据写入与读取

    iOS中plist的创建,数据写入与读取功能创建一个test.plist文件 -(void)triggerStorage {     NSArray *paths=NSSearchPathForDir ...

  2. python把数据写入excel_Python读取和写入Excel文件(转)

    学习用Python处理Excel文件,这里主要用xlrd和xlwt模块,用前需要安装!本文是来自几篇博客和官网tutorial的整理,主要是一个入门.更多的处理Excel的方法请到官网学习,链接为:h ...

  3. NPOI Excel数据写入及读取

    <1>这是一个一般应用程序 using System; using System.Collections.Generic; using System.Linq; using System. ...

  4. 潇洒郎: windows、centos学习Influxdb下载安装 重置用户、密码 influx语法 数据写入与读取、查询 修改默认启动端口

    下载: Install InfluxDB | InfluxDB OSS 2.1 Documentation 新建文件influxd.bat cd %~dp0 influxd.exe 或 cd %~dp ...

  5. 项目动态|Apache Pulsar 2.10.0 版本介绍

    本文翻译自 StreamNative 博客<What's New in Apache Pulsar 2.10>,作者为李鹏辉.Dave Duggins,原文地址为 https://stre ...

  6. 三十八. geotrellis使用 COG 写入和读取

    前言 上一篇中简单介绍了 COG 的概念和 Geotrellis 中引入 COG 的原因及简单的原理,本文为大家介绍如何在 Geotrellis 中使用 COG 来写入和读取 GeoTIFF数据. 一 ...

  7. python中将数据写入excel

    import xlwt MY_EXCEL = xlwt.Workbook(encoding='utf-8') # 创建MY_EXCEL对象 excelsheet = MY_EXCEL.add_shee ...

  8. Apache Iceberg核心原理分析文件存储及数据写入流程

    点击上方蓝色字体,选择"设为星标" 回复"面试"获取更多惊喜 全网最全大数据面试提升手册! 第一部分:Iceberg文件存储格式 Apache Iceberg作 ...

  9. hbase集群 数据写入_一种构建HBase集群全文索引方法,数据读取方法以及数据写入方法与流程...

    本发明涉及HBase集群领域,尤其涉及一种构建HBase集群全文索引方法,数据读取方法以及数据写入方法. 背景技术: 随着云计算技术的不断发展,云计算技术不断落地成为支撑各行业信息技术发展的重要支柱. ...

最新文章

  1. Vue开发入门看这篇文章就够了
  2. 快速提升网站收录量的技巧有哪些?
  3. Python基础之:Python中的模块
  4. 搜索引擎提交软件_增加SEO超级外链须知的高权重网站目录提交方法
  5. linux之head命令
  6. 服务器安装mysql要密码_在阿里云服务器上安装mysql及重置密码
  7. SQLite学习手册
  8. 文件fluent_Win10 中解决FLUENT中UDF 的方法
  9. 动态传参, 名称空间, 嵌套, gloabal, nonlocal
  10. PAT 1059 Prime Factors[难]
  11. 软考网络工程师第一章复习
  12. PMP®考试通过率多少
  13. 哔哩哔哩助手V0.8.16.28
  14. android手机 联系人迁移,有什么软件能快速将手机通讯录的联系人传到另一个手机上...
  15. pandas数据清洗的一些操作
  16. 2020仙气十足的女生个性网名
  17. 2022年茶艺师(中级)考试题库模拟考试平台操作
  18. 【单片机笔记】运放电流检测实用电路
  19. 【编程语言】计算机编程语言
  20. 本地RTMP流媒体服务器搭建拉流简易版

热门文章

  1. Java truelicense 实现License授权许可和验证
  2. 自爆神舟电脑为什么便宜,明眼人可以看懂。
  3. CSS3动画实现高亮光弧效果,循环闪动效果
  4. 视频相关十大开源项目
  5. 插槽和axios的封装
  6. 网络安全- 专访丨互联网安全城市巡回赛冠军肖策:“大满贯”背后的秘密
  7. aliyun-freeSSL证书生成、下载、配置到apache httpd
  8. Halium 9 尝鲜 -- 在小米平板4上的移植 (一)
  9. cuda编译错误 ptxas fatal : Unresolved extern function xxxx
  10. 美团住宿业务数据治理体系化思考与实践