rocketmq想支持批量消费,于是便设置以下参数:

consumer.setConsumeMessageBatchMaxSize(1000);

这样是正确的,但由于业务要求,还想再设置大点,于是设置成这样:

consumer.setConsumeMessageBatchMaxSize(10000);

报错了。直接不消费了。

错误原因写的很明显,这个consumeMessageBatchMaxSize只支持0到1024,超出范围就直接启动消费者失败。
下面是报错信息:

com.alibaba.rocketmq.client.exception.MQClientException: consumeMessageBatchMaxSize Out of range [1, 1024]
See https://github.com/alibaba/RocketMQ/issues/73 for further details.at com.alibaba.rocketmq.client.impl.consumer.DefaultMQPushConsumerImpl.checkConfig(DefaultMQPushConsumerImpl.java:910) ~[rocketmq-client-3.2.2.R3.FB-20160704.105459-1.jar:na]at com.alibaba.rocketmq.client.impl.consumer.DefaultMQPushConsumerImpl.start(DefaultMQPushConsumerImpl.java:695) ~[rocketmq-client-3.2.2.R3.FB-20160704.105459-1.jar:na]at com.alibaba.rocketmq.client.consumer.DefaultMQPushConsumer.start(DefaultMQPushConsumer.java:385) ~[rocketmq-client-3.2.2.R3.FB-20160704.105459-1.jar:na]at com.yeahmobi.dsp.adconsumer.helper.AbstractPullConsumer2ForBatch.afterPropertiesSet(AbstractPullConsumer2ForBatch.java:173) ~[dsp-track-consumer-0.0.1-SNAPSHOT.jar:na]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1642) [spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1579) [spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545) [spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) [spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) [spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) [spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) [spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) [spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:751) [spring-beans-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861) [spring-context-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541) [spring-context-4.3.3.RELEASE.jar:4.3.3.RELEASE]at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:761) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:371) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) [spring-boot-1.4.1.RELEASE.jar:1.4.1.RELEASE]

看源码:


这个值默认是1,也就是rocketmq默认只能一条一条消费。


再看这段,直接判断范围,不在0到1024就报错了。

问题很明显,但仔细想想这是为什么呢?

为什么这个值不让超过1024,也就是rocketmq的作者,不希望每批处理的条数超过1024条。

个人猜测

1、如果一批消费太多的话,量可能会有点太大,导致传输解析变慢。
2、如果失败重试,这么多绑在一起,可能就因为某一条出错,而导致整体重试,所以这个整体也不能太大,否则也是很麻烦的。

[错误记录] --- rocketmq批量消费设置参数的问题相关推荐

  1. rocketmq批量消费

    rocketmq默认就是可以批量消费的,但需要设置多个参数一起配合. 我们只需要知道他是怎么消费的,就可以很精准的设置他的批量消费参数. 我们看看DefaultMQPushConsumer源码中的这几 ...

  2. SpringBoot 集成 kafka,基于注解批量消费设置

    网上关于SpringBoot 集成kafka的批量消费功能需要手动创建类(这篇文章不错:[弄nèng - Kafka]应用篇(三) -- Springboot整合Kafka(批量消费)_司马缸砸缸了- ...

  3. Apache Kafka-消费端_批量消费消息的核心参数及功能实现

    文章目录 概述 参数设置 Code POM依赖 配置文件 生产者 消费者 单元测试 测试结果 源码地址 概述 kafka提供了一些参数可以用于设置在消费端,用于提高消费的速度. 参数设置 https: ...

  4. 【错误记录】未安装该应用 ( 在 Android 12 之后 组件设置 android:exported=“false“ 属性 )

    文章目录 一.报错信息 二.解决方案 一.报错信息 报错信息 : 点击应用图标后 , 应用并未启动 , 并弹出 " 未安装该应用 " 提示信息 ; 二.解决方案 排查了一下相关地方 ...

  5. php设置错误,错误记录

    //设置错误级别. error_reporting(E_ALL);  //显示所有错误 error_reporting(E_ALL&~E_NOTICE);  //显示所有错误但不显示提示级别的 ...

  6. 项目管理系统、工作台、经营看板、质量管理、合同管理、合同审核、新建合同、分包商管理、立项审批、创建项目、项目模板、项目统计、计划管理、结项申请、审批流程、审批记录、审批状态、参数设置、axure原型

    项目管理系统.工作台.经营看板.质量管理.合同管理.合同审核.新建合同.分包商管理.立项审批.创建项目.项目模板.项目统计.计划管理.结项申请.审批流程.审批记录.审批状态.参数设置.axure原型 ...

  7. 教你批量查询极兔快递并设置参数

    许多电商的从业者们想要快速的查询大量快递物流信息,并且设置快递的参数,应该怎么办呢?小编来教大家可以快速查询快递信息并设置参数的简单操作,现在就一起试试! 我们用的这个方法会用到一个叫[固乔快递查询助 ...

  8. 记录Rocketmq定时消息不消费问题的排查过程

    记录Rocketmq定时消息不消费问题的排查过程 写在前面 问题根源初步确认 问题根源再次确认. 了解rocketmq定时消息原理以及处理过程. 源码调试 结论求证 后记 写在前面 此本记录了一个项目 ...

  9. rocketmq 顺序消费_10 分钟看懂消息队列 RocketMQ

    RocketMQ 是阿里巴巴在2012年开源的分布式消息中间件,目前已经捐赠给 Apache 软件基金会,并于2017年9月25日成为 Apache 的顶级项目.作为经历过多次阿里巴巴双十一这种&qu ...

最新文章

  1. ANDROID_NDK的path,如何在Android Studio中设置NDK_PROJECT_PATH
  2. CentOS6.5升级到CentOS7
  3. distinct的用法
  4. 云程序备援--CAP
  5. 李宏毅2020深度学习-判别方法和生成方法
  6. 计算机考试用英语怎么说,“全国大学生计算机等级考试一级”英语怎么说?
  7. 短视频直播带货单页面源码 自媒体落地页织梦模板
  8. 如何使用Tree-shaking减少代码构建体积
  9. 软件测试常见笔试面试题(一)
  10. android之canvas绘制矩形
  11. 推荐 | 掌握这些套路,你也能解决 90% 的 NLP 问题
  12. Atian inputmethod 输入法解决方案 方言与多语言多文字支持 英语汉字汉语阿拉伯文的支持 (au
  13. v强制打开usb调试平台_一加OnePlus 8T手机怎么打开手机开发者选项,开启USB调试连接电脑...
  14. 500~1000元价位有哪些新手入门吉他推荐?saga萨伽、VEAZEN费森和雅马哈这几个品牌怎么样?
  15. 【自定义View】洋葱数学同款阴影布局-ShadowLayout
  16. java8,java9和java11的特性和区别!
  17. HSA人血清白蛋白修饰纳米金球金棒
  18. 如何用计算机语言表达我想你,表达我想你的句子情话
  19. CSDN写文章上传图片失败原因
  20. Linux开发板开机自动连接WiFi,IMX6UL(讯为开发板)。

热门文章

  1. 使网页成黑白色调的滤镜(转)
  2. oracle Sql语句分类
  3. Codeforces Round #462 (Div. 2), problem: (C) A Twisty Movement (求可以转一次区间的不递增子序列元素只有1,2)...
  4. 2017.4.07 js 中的function 实现的方式
  5. vim 插件之commentary
  6. ASP.NET MVC V2 Preview 1 发布 期望VS有更好的表现
  7. junit单元测试,反射,注解
  8. linux标准I/O——按对象输入和输出
  9. 链路状态路由协议与OSPF
  10. BP神经网络分类实战项目(深度学习笔记)原创!基础篇||PCA降维、反向传播公式、梯度下降、标准化、倾斜样本处理、独热编码、Adam优化算法、权值初始化、F1-Score、ROC、模型可视化