Multi Tenancy
成为一个多租户系统是 Pulsar 最初设计理念的一部分。 并且,Pulsar 提出了租户的概念。 租户可以跨集群分布,每个租户都可以有单独的认证和授权机制。 租户也是存储配额、消息 TTL 和隔离策略的管理单元。
Pulsar 的多租户性质主要体现在 topic 的 URL 中,其结构如下:
persistent://tenant/namespace/topic
可以看到,租户是 topic 的最基本单位(比命名空间和 topic 名称更为基本)。
租户
可以为 Pulsar 实例中的每个租户分配:
命名空间
Pulsar 通过租户和命名空间这两个关键概念支持多租户。
- Pulsar 为指定的多个租户配置了合适的容量。
- 命名空间是一个术语,指租户的管理单元。 命名空间上设置的配置策略适用于在该命名空间中创建的所有 topic。 租户可以使用 REST API 和
pulsar-admin
CLI 工具来创建多个命名空间。 例如,包含多个应用程序的租户可以为每个应用程序创建单独的命名空间。
同一命名空间中 topic 的名称如下:
persistent://tenant/app1/topic-1
persistent://tenant/app1/topic-2
persistent://tenant/app1/topic-3