默认租户/命名空间

Pulsar 内置了对多租户的支持。 在 Pulsar 中生成或消费消息时,指定的 topic 实际上是以下格式的 topic URL:spring-doc.cadn.net.cn

(persistent|non-persistent)://tenant/namespace/topic

URL 指示作针对的租户和命名空间。 但是,当不是完全限定时(即仅指定了主题名称),则默认租户public和 namespace 的default被使用。spring-doc.cadn.net.cn

Spring for Apache Pulsar 允许你指定在针对非完全限定的主题 URL 生成或使用消息时使用的默认租户和/或命名空间。spring-doc.cadn.net.cn

配置

使用 Spring Boot

使用 Spring Boot 时,您只需将spring.pulsar.defaults.topic.tenantspring.pulsar.defaults.topic.namespaceapplication 属性来指定这些默认值。spring-doc.cadn.net.cn

如果您想禁用此功能,只需将spring.pulsar.defaults.topic.enabledproperty 设置为false.spring-doc.cadn.net.cn

不使用 Spring Boot

但是,如果您改为手动配置组件,则必须提供PulsarTopicBuilder在构建相应的 producer 或 consumer factory 时配置所需的 default topic 和 namespace。 所有默认的 consumer/reader/producer 工厂实现(imperative 和 reactive)都允许指定主题构建器。spring-doc.cadn.net.cn

您需要在每个手动配置的工厂上指定要使用默认 tenant/namespace 的主题构建器