openstack中的通信机制

本文探讨OpenStack中的两种通信机制:RESTful API和RPC。RESTful API基于HTTP协议,遵循统一的URL格式,强调客户端与服务端的独立性和无状态性,但在异步通信和消息格式上有限制。RPC则采用AMQP协议,如rabbitmq,提供进程间异步、对称的通信,允许发布者和订阅者之间的解耦。两者的核心区别在于,REST以名词为中心,RPC以动词为中心。
摘要由CSDN通过智能技术生成

我们都知道openstack中有至少两种通信机制,一种是RESTful API,另一种是RPC调用,举个例子,当nova与glance通信的时候可能用的是RESTful API,而nova-api与nova-scheduler进行通信的时候,却是使用rabbitmq中的消息队列。为什么呢?另外在一个架构设计中应该选择哪一种通信机制。需要我们对这两种机制有一定的了解。

分类

  • RESTFUL API
  • RPC

RESTful API

  • RESTFUL API是一套架构约束条件和原则
    • REST定义的原则
      • 所有事物都定义了ID。openstack中每个资源都有唯一的UUID
      • 所有事物都链接在一起。在openstack中将资源的ID放在URL中。
      • 使用标准的方法。比如说GET是查询资源,POST是添加资源,PUT是更新资源等等。
    • 使用RESTful API架构,实现的目标
      • 客户端与服务端的独立性: 在公共接口不变的情况下,客户端和服务端的代码可以独立开发。
      • 无状态性: 用户的状态保存在客户端,服务端不再保存用户的状态。客户端向服务端发送请求时,必须发送所有的数据,包括用户状态。
      • 统一的接口: RESTful API的URL格式需要遵守统一的规范。可以降低客户端服务器的耦合度,使得编码更加简单。
    • 利用PasteDeploy定制WSGI服务(openstack中所有web服务都是通过WSGI部署的,例如h
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值