我的理解是,一些 Openstack 组件使用 RabbitMQ 服务(使用 RPC 协议)进行通信,而其他组件使用 REST API、DB 查询等进行通信。
但是当我检查 rpcinfo -p 时,它没有列出任何与 RabbitMQ/openstack 相关的服务。
rpcinfo中显示的服务(如NIS、NFS等)与RabbitMQ/Openstack服务的通信机制有什么区别?
答案1
RPC 代表remote procedure call
。它的主要问题是有太多协议调用RPC
。NIS 和 NFS 使用的协议称为 ONC RPC(或 SUN RPC)。Openstack 使用另一种 RPC 实现 - 基于消息队列协议,与 oncrpc 不兼容。因此,您需要不同的工具来检查和监控。您可以从RabbitMQ 监控