📅 2021-10-27
上一节介绍了如何使用Pulsar的Java客户端开发Pulsar的Producer、Consumer和Reader,Pulsar使用二进制协议在Producer/Consumer和Brokers之间通信,在开发Consumer时可以使用同步或异步的方式接收消息,同时支持批量接收消息和多主体订阅的特性,消费者在处理消息时还要考虑根据具体业务场景考虑使用死信策略。本节将介绍Pulsar Go Client的使用,演示使用Pulsar的Go客户端库开发Producer和Consumer。
...📅 2021-10-26
上一节学习了Pulsar的逻辑架构,Pulsar在逻辑结构上由租户(Tenant)、命名空间(Namespace)、主题(Topic)组成。
Pulsar是一个多租户系统,租户可以跨集群分布,租户代表了组织中特定的业务单元、产品线、核心功能,对应组织中的不同部门或团队负责。
Pulsar中消息的读写都是面向Topic的,支持分区Topic,分区Topic内部实现为等于分区数量的N个内部Topic,多个Broker就可以为多个内部Topic服务,均匀分布负载,分区发布由Pulsar自动管理对用户透明。
...📅 2021-10-25
上一节在docker容器运行并体验了单机模式的Pulsar,使用命令行管理工具pulsar-admin
创建了租户、命名空间和Topic,了解了Pulsar Admin REST API。
本节将对pulsar的租户、命名空间、Topic相关的内容做一下整理。
Pulsar被设计为一个多租户系统,租户可以跨集群分布,每个租户都可以有单独的认证和授权机制,可以针对租户设置存储配额、消息生存时间TTL和隔离策略。
Pulsar的多租户功能使其可以为组织中的不同部门、不同团队提供安全且独占的消息服务,允许不同部门、不同团队之间共享。这样一个Pulsar实例下边多个Pulsar集群可以成为整个组织的消息平台服务。
Pulsar使用租户、命名空间、主题的层次结构支持多租户,这就是Pulsar的逻辑架构,描述了在Pulsar中如何存储数据的逻辑结构。
...📅 2021-10-24
上一节学习了单个Pulsar集群的组成: 无状态智能路由层Pulsar Proxy(可选)、无状态服务层Pulsar Broker、消息持久化存储Bookies,配置协调和元数据存储Zookeeper。
本节我们将在个人本地开发环境开始使用Pulsar,对于本地开发和测试只需要运行单机模式的Pulsar。在容器中运行Pulsar是本地开发测试最简单的方法。
这里将在本地开发环境中使用docker启动Pulsar Standloen的容器。
...📅 2021-10-22
从分布式系统的部署和管理角度来看,大多数分布式系统都将集群作为的最高级别抽象,如果涉及到跨地域部署时会在不同地域部署多个集群,但这需要将每个集群视为独立的系统进行配置和管理。
Pulsar提供了一个比Pulsar Cluster(Pulsar集群)
更高级别的抽象,叫Pulsar Instance(Pulsar实例)
。一个Pulsar Instance由多个Pulsar Cluster组成,一个Pulsar实例中的集群之间可以相互跨地域复制数据。
Pulsar Instance作为一个唯一的单元,可以从各地域中的一个位置统一管理。
...📅 2021-10-21
Apache Pulsar简介
#
Apache Pulsar是一个支持多租户的、高性能的、分布式的Pub-Sub消息系统,最初由雅虎开发,现在是Apache软件基金会的顶级项目。
Pulsar提供非常低的消息发布和端到端的延迟、保障消息可靠传递零丢失,同时提供了一个用于流数据处理的无服务器轻量级计算框架。
...