pulsar消息可靠性(pulsar原理)

技术Pulsar的特性与优势有哪些这篇文章主要介绍“Pulsar的特性与优势有哪些”,在日常操作中,相信很多人在Pulsar的特性与优势有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”

本文主要介绍“脉冲星的特点和优势是什么”。在日常操作中,相信很多人对脉冲星的特性和优势有所怀疑。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮助大家解答“脉冲星有哪些特点和优势”的疑惑!接下来,请和边肖一起学习!

为什么选择 Pulsar

现状及痛点

在使用脉冲星之前,涂鸦使用的架构基本如下图所示。消息进入接入层后,由Kafka进行分发和转换,这个消息集群主要做一些消息分发和路由的功能。然后通过HTTP传递给第三方。Pulsar的特性与优势有哪些

上述架构模型中有一些业务痛点:1. HTTP 投递方式不灵活,容易丢消息

由于网络原因,当公司服务器的规模不足以支持业务时,重启过程中可能会丢失消息。如果您想满足这一需求,您需要对消息持久性进行额外的处理。2. Kafka topic 数量与日俱增,运维成本高

随着接入厂商和开发者数量的增加,对卡夫卡运维水平的压力会比较大,人力和时间成本也会比较高。3. Kafka 自身的一些痛点,比如 Rebalance 机制

集群需要经常升级,消费者会经常断开连接。在断线的情况下,再平衡过程很长,导致消息积累增加,用户体验下降。同时,积累后的重启,在集群大量的情况下,会给消费者带来很大的压力。4. 租户之间会相互影响

如果有租户挂机未能及时处理,会一直堆积在Kafka的处理器上,会耽误后续进程,降低消息上报性能,影响其他租户。Pulsar 的特性与优势

Apache Pulsar是一个灵活的发布-订阅消息系统,采用层次化、碎片化的架构。1. 丰富的投递/订阅策略

Pulsar统一了队列模型和流模型。在主题级别只需要保存一条数据,同一条数据可以被多次使用。通过流式、排队等方式计算不同的订阅模型,大大提高了灵活性。Pulsar的特性与优势有哪些

2. 运维难度小(相比 Kafka),Rebalance 机制反应迅速

主要体现在跨区域复制。Pulsar采用云原生架构,计算和存储分离,数据远离Broker,存在于共享存储中。上层无状态代理复制消息分发和服务;是较低的持久存储层Bookie集群。脉冲星存储是碎片化的。这种架构可以避免容量扩展的限制,实现数据的独立扩展和快速恢复。3. 多租户隔离优势

租户和命名空间是脉冲星支持多租户的两个核心概念。

tion>


  • 在租户级别,Pulsar 为特定的租户预留合适的存储空间、应用授权与认证机制。
  • 在命名空间级别,Pulsar 有一系列的配置策略(policy),包括存储配额、流控、消息过期策略和命名空间之间的隔离策略。


现阶段结构
  
刚好这三点特性,对应了之前涂鸦面临的痛点,所以在契合下开始转向使用 Pulsar 来替代了 Kafka。

Pulsar的特性与优势有哪些

目前 Pulsar 的架构已应用到涂鸦智能平台,成为一个主导消息队列,后续也在围绕 Pulsar 进行一些二次开发和周边服务搭建。

以前信息的投递会有 5-6 s 的延迟,现在大概只有 1 s,整体的提升和改进是非常大的。

当然用 Pulsar 替代 Kafka 的过程,也有一些缺点,比如:成本高。这个过程就需要督促第三方开发者去替换 SDK,同时过渡时期还要支持两套系统。

刚好最近 StreamNative 开源了 KoP,可以让两者之间的迁移更简单,也算解决了这一问题。

Pulsar的特性与优势有哪些

上图就是 BookKeeper 内的 Pulsar 架构示意图,其中 zk 是指 ZooKeeper。更多关于 Broker、Bookie 和 Proxy 等概念介绍,可以参考之前 TGIP-CN 的回顾:
 Message Lifecycle:Pulsar 里的信息传递究竟是什么样子
 。

同时借由存储端 BookKeeper 的存储中间件特性,使得 Pulsar 现在的存储分离架构并没有增加额外的使用复杂度。

Proxy 在这里提供了类似 TCP 的一个代理,为 Consume 提供了“寻址”的功能。Consumer 无需关心真实的 Broker 地址,连上 Proxy 后会直接从 ZooKeeper 里拉取 Topic 的位置等数据,此过程中 Consumer 只需保证稳定的连接即可。

但 Proxy 并没有进行负载均衡的功能,这些都是在 Broker 上进行的。这一点也在之前的 TGIP-CN 直播中提到过。

当然针对涂鸦的一些使用场景,他们也在 Proxy 上进行了一些扩展。



Dubbo-go + Pulsar 的实例应用

Pulsar的特性与优势有哪些

上图是一开始使用 Pulsar 时的架构图。生产者投递消息后,利用 in Topic 路由解析出来并进行投递。但是这个过程中需要构建多个 Pulsar 集群,导致运维程度的增加。

Pulsar的特性与优势有哪些

现在在 Pulsar 架构里增加一个“source”,它可以用来收集之前的 topic,搭配 function 功能进行传递。

之后在 function 部件内嵌入了 Dubbo-go consumer,把一些复杂的路由规则通过 Dubbo-go  consumer 进行拉取。同时借用 Pulsar broker 的整体集群管理,减少了运维的业务压力。

Pulsar的特性与优势有哪些

Dubbo-go
具体关于 Dubbo 的一些 demo 展示或者使用方法,可以参考以下网站。

  • Dubbo 中文网站:
    http://dubbo.apache.org/zh-cn/

  • GitHub 仓库:
    https://github.com/apache/dubbo-go

Dubbo-go 的架构示意图可以参考下方:

Pulsar的特性与优势有哪些
Pulsar的特性与优势有哪些

到此,关于“Pulsar的特性与优势有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/147017.html

(0)

相关推荐

  • 如何用配置文件来管理多个Node.js进程

    技术如何用配置文件来管理多个Node.js进程这篇文章主要介绍“如何用配置文件来管理多个Node.js进程”,在日常操作中,相信很多人在如何用配置文件来管理多个Node.js进程问题上存在疑惑,小编查阅了各式资料,整理出

    攻略 2021年11月29日
  • 汇编语言怎么实现简单数学运算

    技术汇编语言怎么实现简单数学运算这篇文章主要介绍“汇编语言怎么实现简单数学运算”,在日常操作中,相信很多人在汇编语言怎么实现简单数学运算问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”汇编语

    攻略 2021年11月29日
  • 火线字母,请问插头上的l。n那个是火线

    技术火线字母,请问插头上的l。n那个是火线按我国现行标准,GB2681中第3条依导线颜色标志电路时,一般应该是相线-A相黄色,B相绿色,C相红色。零线-淡蓝色。地线是黄绿相间。如果是三相插座,左边是零线,中间(上面)是地

    生活 2021年10月23日
  • 如何解决PHP xcache无法加载

    技术如何解决PHP xcache无法加载这篇文章主要讲解了“如何解决PHP xcache无法加载”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何解决PHP xcache

    攻略 2021年10月23日
  • 如何深度剖析Python语言特点

    技术如何深度剖析Python语言特点这期内容当中小编将会给大家带来有关如何深度剖析Python语言特点,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。这里并不涉及python的特殊规则和

    攻略 2021年10月28日
  • 用图形画一幅画,用一张白纸怎么样绘画出一张图

    技术用图形画一幅画,用一张白纸怎么样绘画出一张图“绘见70年用图形画一幅画,画出新中国”一个才华横溢有望成为艺术大家的美术老师?,为大家呈现以绘画的方式表达对祖国的热爱。一张白纸经过我们的图图画画,使空白化作神奇。新手绘

    生活 2021年10月24日