用于融合的内部 oslo.messaging 总线¶
包含您的 Launchpad 蓝图的 URL
https://blueprints.launchpad.net/heat/+spec/convergence-message-bus
问题描述¶
我们需要一个消息总线用于融合的内部 worker API。
提议的变更¶
在 heat-engine 中创建一个新的 worker 服务,专门用于处理发送到融合中的 ‘worker’(又名 ‘converger’)actor 的内部消息。此总线上的消息将使用 ‘cast’ 方法而不是 ‘call’ 方法,以 anycast 的方式将消息发送到将异步处理它的引擎。我们不会等待或期望这些消息的回复。
此总线最终将实现的消息类型是 https://github.com/zaneb/heat-convergence-prototype/blob/resumable/converge/converger.py 中使用 @asynchronous 装饰器标记的消息。
备选方案¶
我们可以有一个单独的 heat-worker 守护进程,但似乎没有必要为部署者增加难度,因为 heat-engine 可以处理相同的任务。
我们可以将此功能混合到与 heat-api 调用现有的 RPC API 相同的服务中,但这很混乱,因为两者具有完全不同的用途。heat-engine 内部运行另一个 RPC 服务已经有先例,但我们无法重用它,因为它侦听特定于引擎 ID 的队列。
实现¶
负责人¶
- 主要负责人
kanagaraj-manickam
里程碑¶
- 完成目标里程碑
Kilo-3
工作项¶
在引擎中实现新的 worker 服务
实现一个客户端 API,以便轻松地向 worker 服务发送消息
依赖项¶
无