我想使用Python运行时通过Nuclio直接从Azure Service Bus读取消息。有没有人有这方面的经验?
我假设我需要在init_context函数中创建ServiceBusClient,但是来自azure的示例显示了它发生在它自己的上下文管理器中,如下所示:
conn_str = <CRED>
queue_name = <NAME>
with ServiceBusClient.from_connection_string(conn_str) as client:
with client.get_queue_receiver(queue_name, max_wait_time=30) as receiver:
for msg in receiver:
print(str(msg))我假设最佳实践是在init_context中创建ServiceBusClient,然后调用setattr(context.user_data, 'my_servicebus', my_servicebus.from_connection_string())
有人有这方面的经验吗?
发布于 2021-08-21 13:15:49
我建议您探索将Service Bus连接到Azure Event Hub。尽管在init_context中发起连接的想法是一个很好的开始,但是管理ESB连接的状态和配置会很复杂。
Nuclio包括Azure事件中心触发器。它不仅可以简化您的部署,还可以利用Nuclio的自动缩放和恢复选项。
我找到了这篇文章,它似乎指导您完成ESB与Hub的集成。
https://stackoverflow.com/questions/68869992
复制相似问题