RabbitMQ【3】对比Basic.Get和Basic.Consume
对比Basic.Get和Basic.Consume
RabbitMQ实现了两个不同的AMQP RPC命令来获取队列中的消息:Basic.Get和Basic.Consume。正如本章标题所示,Basic.Get不是从服务器获取消息的理想方法。使用最简单的说法,Basic.Get是一个轮询模型,而Basic.Consume是一个推送模型。
1.1.1 Basic.Get
当你的应用程序使用Basic.Get请求来获取消息时,每次它想要接收消息就必须发送一个新的请求,即使队列中存在多个消息。当发出一个Basic.Get,如果你想要获取消息的队列中有一条消息正处于等待处理状态,RabbitMQ就会回应一个Basic.GetOk RPC响应。如下图: