Pulsar 2.0 是 Pulsar 一个新的主版本,其中有一些重大变化,包括简化的 Topic 名称,增加 Pulsar Functions 的功能,以及一些术语的变化等等。

Pulsar 2.0 的新功能

功能Description
Pulsar FunctionsPulsar 的一个轻量级计算功能

主要变化

需要注意一些重大变化,这些变化会显著影响 Pulsar 的日常使用。

属性 Vs. 租户

在之前的版本中,Pulsar 有一个属性(property)的概念。 属性和租户(tenant)本质上是相同的,所以 property 这一名词从 2.0 版本开始就取消了。例如,pulsar-admin properties 命令行接口更换为 pulsar-admin tenants 接口。 在某些情况下,仍然使用 properties,但不推荐使用,并且在后续更新中会将其完全移除。

Topic 名称

在 2.0 版本之前,所有 Pulsar topic 的形式都相同,如下所示:

  1. {persistent|non-persistent}://property/cluster/namespace/topic

在 Pulsar 2.0 版本中有两个重要改变:

不再使用集群部分

从 topic 名称中移除集群部分。Topic 名称的新形式为:

  1. {persistent|non-persistent}://tenant/namespace/topic

已经使用了之前命名形式的 topic,其命名形式没有改变,并且以后也不会更改。

Topic 灵活性命名

在 Pulsar 2.0 内部,所有 Topic 名称的形式如上所示,但是在许多情况下(出于简便考虑),可以使用简化的名称。 灵活命名系统基于 topic 类型、租户及命名空间均有默认值,默认值如下:

Topic默认值
topic 类型persistent
租户public
命名空间default

下表为使用隐式默认值的 topic 名称的转换示例:

输入 topic 名称转换后的 topic 名称
my-topicpersistent://public/default/my-topic
my-tenant/my-namespace/my-topicpersistent://tenant/namespace/topic

对于非持久化 topics,需要指定 topic 的完整名称,因为持久化 topic 名称的默认规则在此不适用。 因此,不能使用如 non-persistent://my-topic 这样简化的名称,而应使用 non-persistent://public/default/my-topic