AMQP-RabbitMQ中RPC模式和关注消息处理结果的示例分析

这篇文章主要介绍了AMQP-RabbitMQ中RPC模式和关注消息处理结果的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

梁子湖ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

6. RPC

But what if we need to run a function on a remote computer and wait for the result? Well, that's a different story. This pattern is commonly known as Remote Procedure Call or RPC.

大概意思是说,上面几种模式都是生产者将消息发送到Rabbitmq,然后就不管了,也不管是否有消费者进行了消费,也不管消费的结果是怎样的。上面几种场景已经可以满足大多数需求。但是有一种场景是生产者必须知道消费结果才能进行后续操作,

  • 图示

AMQP-RabbitMQ中RPC模式和关注消息处理结果的示例分析

  • Our RPC will work like this:

  • For an RPC request, the Client sends a message with two properties: replyTo, which is set to a anonymous exclusive queue created just for the request, and correlationId, which is set to a unique value for every request.

  • The request is sent to an rpc_queue queue.

  • The RPC worker (aka: server) is waiting for requests on that queue. When a request appears, it does the job and sends a message with the result back to the Client, using the queue from the replyTo field.

  • The client waits for data on the reply queue. When a message appears, it checks the correlationId property. If it matches the value from the request it returns the response to the application.

感谢你能够认真阅读完这篇文章,希望小编分享的“AMQP-RabbitMQ中RPC模式和关注消息处理结果的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


当前文章:AMQP-RabbitMQ中RPC模式和关注消息处理结果的示例分析
网站路径:http://hbruida.cn/article/iihscp.html