时间: 2020-09-17|31次围观|0 条评论

在Openstack中,RPC调用是通过RabbitMQ进行的。

任何一个RPC调用,都有Client/Server两部分,分别在rpcapi.py和manager.py中实现。

这里以nova-scheduler调用nova-compute为例子。

nova/compute/rpcapi.py中有ComputeAPI

nova/compute/manager.py中有ComputeManager

两个类有名字相同的方法,nova-scheduler调用ComputeAPI中的方法,通过底层的RabbitMQ,就能到达nova-compute的ComputeManager中的方法。

本文主要分析这个过程。

ComputeAPI.run_instance()的调用过程如下:

image

nova-compute监听消息,将消息dispatch到ComputeManager的run_instance()方法。

image

文章转载于:https://www.cnblogs.com/popsuper1982/p/3800396.html

原著是一个有趣的人,若有侵权,请通知删除

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《Openstack中RabbitMQ RPC代码分析
   

还没有人抢沙发呢~