Elasticsearch 压测实践总结

背景

搜索、ES运维场景离不开压力测试。

复制代码
1.宿主机层面变更:参数调优 & 配置调整 & 硬件升级2.集群层面变更:参数调优3.索引层面变更:mapping调整

当然还有使用层面变更,使用API调优(不属于该文章的讨论范围)

ES压测,官方推荐esrally工具(python编写)。虽然esrally功能丰富,但esrally的依赖比较多,很难快速搭建可用的压测环境。对于追求轻量工具的开发者而言,可以考虑使用infinilabs提供的loadgen工具。

推荐工具:

|------------|----------|--------|--------|
| | 优势 | 缺点 | 语言 |
| esrally | 功能丰富 | 环境配置复杂 | python |
| loadgen | 轻量,无外部依赖 | 不开源 | go |
| 其他http压测工具 | | | |

【离线】esrally实践总结

本地开发环境(可接互联网)测试使用esrally相对比较方便,生产环境的机器(不接外网)如果想要使用esrally,则有诸多注意事项。具体可以参考以下文章:

复制代码
https://developer.aliyun.com/article/851848?spm=a2c6h.13262185.0.0.7baa709dE62k1c

loadgen部署

选择当前最新版本:1.24.0

到该地址下载工具:

https://release.infinilabs.com/loadgen/stable/

解压即可:

复制代码
tar vxzf loadgen-1.24.0-454-linux-amd64.tar.gz

解压之后只需要关注以下2个文件即可。

注:

1. loadgen.yml 配置了各种信息,并且指定了压测ES的读写请求

2. 其中 loadgen.dsl 仅为压测开始之前的测试所用,可以忽略

官方文档:

https://infinilabs.cn/docs/latest/gateway/getting-started/benchmark/

loadgen测试与问题

...

loadgen使用推荐

...

压测不符合预期需要考虑什么?

...

更多核心技术:

Elasticsearch 压测实践总结搜索、ES运维场景离不开压力测试。\x0d\x0a- 宿主机层面/集群层面/索引层面变更。\x0d\x0aES压测,官方推荐esrally工具,但esrally很难快速搭建可用的压测环境。对于追求轻量的开发者而言,考虑使用infinilabs提供的loadgen工具。https://mp.weixin.qq.com/s?__biz=Mzk0NzY1OTcxMA==&mid=2247483675&idx=1&sn=fca13442abcf5126118aebd43fb3b4d7&chksm=c37237caf405bedcc2faeee67546f0055819672a6e61791427eafe145d38d7be053d1fd94ff9&token=1052162526&lang=zh_CN#rd

相关推荐
大志哥12320 小时前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
TableRow1 天前
参数化搜索的实现原理:从多维索引到查询优化
elasticsearch·全文检索
醉颜凉1 天前
Elasticsearch高性能优化:Bulk API大规模数据导入性能调优全攻略
elasticsearch·性能优化·jenkins
星河耀银海1 天前
大模型和搜索引擎到底有什么不一样
人工智能·搜索引擎
Ysouy1 天前
Spring Data Elasticsearch 全流程学习教程
java·spring·elasticsearch
沪飘大军1 天前
goldRush-专门分析黄金的投资理财agent
java·开发语言·elasticsearch
让学习成为一种生活方式1 天前
samblaster v.0.1.26安装与使用--生信工具096
大数据·elasticsearch·搜索引擎
小马爱打代码1 天前
Elasticsearch 容器化部署(单机版):从零搭建你的搜索和分析引擎
elasticsearch
西敏寺的乐章1 天前
排序三阶段:粗排→精排→重排,把业务信号灌进 ES 排序管道
elasticsearch·搜索引擎
小马爱打代码1 天前
Elasticsearch 集群容器化部署:构建 PB 级搜索与分析平台
大数据·elasticsearch·搜索引擎