• RocketMQ学习笔记(12)----RocketMQ的Consumer API简介


    由于消息的消费方式有两种,所以两种方式也有不同的API:

    1. PushConsumer的配置

      1. consumerGroup: 默认值为DEFAULT_CONSUMER,Consumer组名,多个Consumer如果属于一个应用,订阅同样的消息,且消费逻辑一致,则应该将它们归为同一组

      2. messageModel: 消息模型,默认值为CLUSTERING,支持集群消费,广播消费两种模型

      3. consumeFromWhere: 默认值为CONSUME_FROM_LAST_OFFSET,Consumer启动后,默认从什么位置开始消费

      4. allocateMessageQueueStrategy: 默认值AllocateMessageQueueAveragely,Rebalance(轮询)算法实现策略

      5. subscription: 默认值{},订阅关系

      6. messageListener: 消息监听器

      7. offsetStore: 消息进度存储

      8. consumeThreadMin: 默认10,消费线程池数量

      9. consumeThreadMax: 默认20, 消费线程数量

      10. consumeConcurrentlyMaxSpan: 默认值2000, 单队列并行消费允许的最大跨度

      11. pullThresholdForQueue: 默认1000,拉消息本地队列缓存消息最大数

      12. pullInterval: 默认0,拉消息间隔,由于是长轮询,所以为0,但是如果应用为了流控,也可以设置大于0的值,单位毫秒

      13. consumeMessageBatchMaxSize: 默认1,批量消费,一次消费多少条消息

      14. pullBatchSize: 默认32, 批量拉消息,一次最多拉多少条

    2. PullConsumer的配置

      1. consumerGroup: 默认DEFAULT_CONSUMER,Consumer组名,多个Consumer如果属于一个应用,订阅同样的消息,且消费逻辑一致,则应该将它们归为同一组。

      2. brokerSuspendMaxTimeMillis:默认20000,长轮询,Consumer拉消息请求在Broker挂起最长时间,单位毫秒

      3. consumerTimeoutMillisWhenSuspend: 默认30000,长轮询,Consumer拉消息请求在Broker挂起超过指定时间,客户端认为超时,单位毫秒

      4. consumerPullTimeoutMillis: 默认10000,非长轮询,拉消息超时时间,单位毫秒

      5. messageModel:默认值BROADCASTING,消息模型,支持以下集群消费 、广播消费两种模型

      6. messageQueueListener: 监听队列变化

      7. offsetStore: 消费进度存储

      8. registerTopics:默认为[],注册的topic集合

      9. allocateMessageQueueStrategy: 默认AllocateMessageQueueAveragely,Rebalance(轮询)算法实现策略

  • 相关阅读:
    Markdown引用图片,且不使用网上链接的解决方法
    测试
    sudo用户权限添加问题
    windows安装ipython
    ansible基本操作
    mysql用户权限操作
    解决windows7系统的快捷方式无法添加到任务栏
    linux下查看磁盘分区的文件系统格式
    mail客户端POP和IMAP协议
    linux设置history历史记录
  • 原文地址:https://www.cnblogs.com/Eternally-dream/p/9957841.html
Copyright © 2020-2023  润新知