• RabbitMQ中basic**方法汇总与参数解释


    当使用RabbitMQ进行消息传递时,Channel对象提供了一组称为"basic方法"的方法,用于执行最基本的消息传递操作。在本篇博客中,我们将详细介绍这些方法,包括示例和参数解释。

    1. basicPublish 方法

    basicPublish 方法用于发布一条消息到指定的交换机

    • 参数解释:
      • exchange(交换机名称):指定消息要发送到的交换机。
      • routingKey(路由键):指定消息要路由到的队列。
      • props(消息属性):消息的属性,通常设置为 None
      • body(消息内容):消息的实际内容。

    示例:

    channel.basicPublish(exchange='', routingKey='my_queue', body='Hello, RabbitMQ!')
    
    • 1

    2. basicConsume 方法

    basicConsume 方法用于开始消费队列中的消息。

    • 参数解释:
      • queue(队列名称):指定要消费的队列。
      • consumer(消费者回调函数):接收消息的回调函数。
      • autoAck(自动确认):指定是否自动确认收到的消息。
      • exclusive(独占性):指定是否将队列标记为独占队列。
      • arguments(附加参数):可选的附加参数。

    示例:

    def callback(ch, method, properties, body):
        print(f"Received message: {body}")
    
    channel.basicConsume(queue='my_queue', on_message_callback=callback, auto_ack=True)
    
    • 1
    • 2
    • 3
    • 4

    3. basicCancel 方法

    basicCancel 方法用于取消消费者的订阅。

    • 参数解释:
      • consumerTag(消费者标签):要取消的消费者的标签。

    示例:

    channel.basicCancel(consumerTag='my_consumer')
    
    • 1

    4. basicAck 方法

    basicAck 方法用于确认已经成功处理的消息。

    • 参数解释:
      • deliveryTag(投递标签):要确认的消息的投递标签。
      • multiple(批量确认):指定是否批量确认。

    示例:

    channel.basicAck(deliveryTag=1, multiple=False)
    
    • 1

    5. basicNack 方法

    basicNack 方法用于拒绝一条或多条消息,并可以将它们重新排队或者丢弃。

    • 参数解释:
      • deliveryTag(投递标签):要拒绝的消息的投递标签。
      • multiple(批量拒绝):指定是否批量拒绝。
      • requeue(重新排队):指定是否将消息重新排队。

    示例:

    channel.basicNack(deliveryTag=1, multiple=False, requeue=True)
    
    • 1

    6. basicReject 方法

    basicReject 方法用于拒绝一条消息,并可以将其重新排队或者丢弃。

    • 参数解释:
      • deliveryTag(投递标签):要拒绝的消息的投递标签。
      • requeue(重新排队):指定是否将消息重新排队。

    示例:

    channel.basicReject(deliveryTag=1, requeue=False)
    
    • 1

    7. basicGet 方法

    basicGet 方法用于从队列中获取一条消息,但不会将其从队列中移除。

    • 参数解释:
      • queue(队列名称):指定要获取消息的队列。
      • autoAck(自动确认):指定是否自动确认获取到的消息。

    示例:

    method_frame, header_frame, body = channel.basicGet(queue='my_queue', auto_ack=True)
    
    • 1

    这些basic方法使您能够在RabbitMQ中执行各种消息传递操作,包括发布、消费、确认和拒绝消息。根据您的具体需求,您可以选择适当的方法来与消息代理进行交互,以构建可靠的消息传递系统。希望这篇博客能够帮助您更好地理解和使用RabbitMQ中的basic方法。

  • 相关阅读:
    【数据库】MySQL中的锁机制
    vscode常用插件
    Microsemi Libero SoC 教程2 (点亮LED闪烁)
    Ceph RBD 的实现原理与常规操作
    荣耀主题设计师邀请有礼
    景联文科技低价策略帮助AI企业降低模型训练成本
    《吐血整理》高级系列教程-吃透Fiddler抓包教程(23)-Fiddler如何优雅地在正式和测试环境之间来回切换-上篇
    Linux安装DMETL4
    Stream流使用——(未完)
    离线安装wireshark2.6.10
  • 原文地址:https://blog.csdn.net/m0_51663233/article/details/133657223