Expiring 3623 record(s) for 2:xxx ms has passed since batch

ops/2024/10/22 4:53:25/

Expiring 3623 record(s) for 2:xxx ms has passed since batch

报错大意为:生产发送批次已经创建,但是已经过去120000ms,仍然没有发送,消息过期
(当kafka服务器磁盘空间不足时,也会报此错误。清空磁盘空间,重启kafka服务即可解决。)

主要原因有两类
1、
https://stackoverflow.com/questions/46649748/kafka-producer-timeoutexception-expiring-1-records

共有3个可能解决方案

1.1 增大 request.timeout.ms 配置
这个配置指的是 kafka 等待发送批次大小(以字节为单位)的等待时间,如果超过该时间未满足批次大小,将会超时。
1.2 减少 batch-size 配置
结合上面原因,降低批次条数,少量多发,减少等待时间。
1.3 网络原因,无法满足高负载

但是也有人提出疑问:
ling.ms 默认值时0,即使批次大小没有达到,也会立即发送的。
即使为了减少频繁发送的情况,假设设置为20ms(小于过期时间120000ms),那么过了这20ms,尽管批次大小没有到,生产者也会发送该批次的,是不会出现超时情况的。

2、
https://stackoverflow.com/questions/56807188/how-to-fix-kafka-common-errors-timeoutexception-expiring-1-records-xxx-ms-has

该问题提出者,指出
对batch.size
linger.ms
request.time.out 都进行配置,但是依旧会报错。
仔细查看日志发现,发送消息时,目标topic的目标分区,是负数。
但是在该问题下,未发现更加合理的解决方案以及出现负数的原因,但是,大概率是因为这个问题导致的如标题的报错。

3、临时解决该问题

发送消息时,指定某个分区
通过ProducerInterceptor重写分区逻辑
但是 要注意 分区逻辑对消费者消费数据是否有影响。


http://www.ppmy.cn/ops/7460.html

相关文章

微信小程序之console.log()使用

console.log() 是 JavaScript 中的标准内置函数,主要用于在浏览器的控制台(Console)中输出信息,帮助开发者进行调试和跟踪代码运行状态。以下是一些基本和进阶的使用方法: 1、基础使用方法: console.log(…

设计模式-命令模式

命令模式 命令模式是一种行为设计模式,它可将请求转换为一个包含与请求相关的所有信息的独立对象。该转换能根据不同的请求将方法参数化、延迟请求执行或将其放入队列中,且能实现可撤销操作。 Hystrix是Netflix开源的一款容错框架,具有自我…

Kafka -基本概念

认识Kafka kafka是一个多分区、多副本、基于zookeeper协调的分布式消息系统。 扮演角色 消息系统存储系统:把消息持久化到磁盘,相比于其他基于内存存储的系统而言,有效降低了数据丢失的风险。流式处理平台 基本概念 kafka的体系结构&…

XiaodiSec day025 Learn Note 小迪渗透学习笔记

XiaodiSec day025 Learn Note 小迪渗透学习笔记 记录得比较凌乱,不尽详细 day25 sql 注入 知识点 mysql 注入 mssql 注入 postgreSQL 注入 详细点: access 无高权限注入点,智能暴力猜解,不像 mysql 中的 schema mysql,postgr…

常见经典目标检测算法

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

软考中级工程师网络技术第二节网络体系结构

OSPF将路由器连接的物理网络划分为以下4种类型,以太网属于(25),X.25分组交换网属于(非广播多址网络NBMA)。 A 点对点网络 B 广播多址网络 C 点到多点网络 D 非广播多址网络 试题答案 正确答案: …

【Delphi 爬虫库 2】使用封装好的 JSON 解析库对 JSON 数据进行解析

当我们使用GET或POST方法获取到JSON数据时,我们需要对其进行解析。倘若我们使用现有的JSON解析库,这一过程将变得异常简单。在前文中,我们获得了一个翻译结果的JSON数据,具体如下所示 {“sessionUuid”:“translate_uuid171308666…

手机适配,在真机上适配正常,在pc端适配出现横向滚动条

问题背景 最近,在做一个项目适配的时候,出现一个很奇怪的问题,在真机上,适配一切正常,但是在pc端,适配,偶现横向滚动条。 而且发现一个离奇的事情,就是适配出现横向滚动条&#xff…