openstack中的消息总线

来源:互联网 发布:淘宝网玩具小马会走 编辑:程序博客网 时间:2024/05/17 09:02

1.远程过程调用(RPC Remote Procedure Call)

一个服务进程调用其他远程服务进程的方法,包含Call和Cast方法

call主要是通过同步执行,调用者会被阻塞,直到结果返回

cast主要是异步执行,不会立即返回结果,页不阻塞调用者

2.事件通知(Event Notification)

某个服务进程可以把通知发送到消息总线上,消息总线上的进程可以获得该事件并处理,处理的结果不会返回事件发送者



2.openstack的消息总线主要是高级消息队列协议(AMQP)

这个一个异步的协议规范

主要包含Producer,Exchange,Queue,Consumer这个几个对象

发送的消息包含一个routing key,每一个Queue对象包含了binding key

exchange是会对Queue中的binding key查询,如果查询的binding key 和 消息中的routing key 相同,该消息被转发给Queue对象

3.常用的消息总线

RabbitMQ

ZeroMQ


0 0