Python Pulsar-Client SDK是否支持Pulsar Admin相关类与功能?
Pulsar Python 端Admin管理能力实现方案
- 你在
pulsar-clientPython消息客户端SDK中找不到Admin相关类属于正常情况,该SDK仅覆盖消息生产、消费、流读取等消息侧交互能力,从未内置集群元数据、Topic管理等Admin类接口。和Java生态同时发布pulsar-client、pulsar-admin两个独立依赖的设计一致,Python侧的Admin能力是单独发布的独立包,并未捆绑在消息客户端SDK中。 - 官方已经提供和Java Admin SDK能力完全对等的原生Python Admin SDK,无需自行封装REST请求,直接通过pip安装即可使用:
pip install pulsar-admin
- 对应你给出的Java获取Topic列表示例,Python侧实现代码如下:
from pulsar.admin import PulsarAdmin # 初始化Admin客户端 admin = PulsarAdmin( service_url="http://<Pulsar Broker Web服务地址>:8080", # 集群开启鉴权时传入对应认证凭证,无鉴权场景可省略该参数 authentication=None ) namespace = "my-tenant/my-namespace" # 获取指定命名空间下的全量Topic列表 topic_list = admin.topics().get_list(namespace) # 其余常用管理能力调用逻辑和Java SDK基本对齐: # - 获取Topic绑定Schema:admin.topics().get_schema(目标Topic名称) # - 获取Topic运行统计信息:admin.topics().get_stats(目标Topic名称) # - 租户、命名空间、订阅管理、消息回溯等其余Admin操作,都可通过admin客户端对应入口调用
- 该Python Admin SDK的接口命名、参数规则、返回结构和Java Admin SDK高度对齐,原有Java侧的使用经验可以直接复用,不需要额外做适配。
内容的提问来源于stack exchange,提问作者learn learn
相关产品推荐
相关产品推荐

