ES内存溢出报错问题解决方案

博主有话说:该博文根据实际案例编写,在编写过程中将敏感信息进行替换,可能存在矛盾的地方,望见谅

1 错误详情

[type=circuit_breaking_exception, reason=[parent] Data too large, data for [<http_request>] would be [125643918/119.8mb], which is larger than the limit of [90832896/86.6mb], real usage: [125639936/119.8mb], new bytes reserved: [3982/3.8kb], usages [request=0/0b, fielddata=0/0b, in_flight_requests=3982/3.8kb, accounting=15713/15.3kb]] ElasticsearchStatusException[Elasticsearch exception [type=circuit_breaking_exception, reason=[parent] Data too large, data for [<http_request>] would be [125643918/119.8mb],

在这里找到了3个数值

Data too large, data for [] would be [125643918/119.8mb] 这个就是上限内存(缺省是它是ES最大内存的95%)
real usage: [125639936/119.8mb], ES已经使用的内存
new bytes reserved: [3982/3.8kb] 本次查询需要的内存

2 方案一:增加es的内存

2.1 增加es的内存

编辑elasticsearch配置路径下的jvm.options文件,修改总堆空间的初始大小和总堆空间的最大大小,重启es应用即可

可以根据剩余内存大小情况增加es内存

注:初始值和最大值应当被设置为相同的值

2.2 方案分析

该方案简单粗暴,但是要考虑服务器性能。增加es内存的同时,要考虑到对其它应用的影响,不能增加太高,比如增加到2~3

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值