【发布时间】:2017-07-01 20:05:34
【问题描述】:
我正在尝试让 Qpid Proton Python 客户端通过 AMQP v1.0 作为持久消费者订阅 ActiveMQ 代理。
我可以创建一个持久订阅,但不太明白如何在我的脚本下次运行时获取相同的订阅。
每次运行后,ActiveMQ 管理控制台显示已创建持久订阅,并根据我的脚本输入命名,但下一次运行只是创建另一个,而不是连接到之前创建的。
我想我可能错过了“ClientID”的创建(正如 ActiveMQ 所说的那样),但看不到(在 Qpid Proton 文档中)如何设置它。
这是我的代码:-
def on_start(self, event):
if self.subscription_name:
logging.debug("Naming durable subscription " + self.subscription_name)
durable = DurableSubscription()
else:
logging.debug("Subscription will not be durable")
durable = None
messaging_connection = event.container.connect(self.url)
logging.info(messaging_connection.clientID)
event.container.create_receiver(
messaging_connection,
self.resource,
name=self.subscription_name,
options=durable
)
logging.debug("Connected to " + self.url + "/" + self.resource)
【问题讨论】: