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

相关推荐
Dusk_橙子2 小时前
在elasticsearch中,document数据的写入流程如何?
大数据·elasticsearch·搜索引擎
喝醉酒的小白4 小时前
Elasticsearch 中,分片(Shards)数量上限?副本的数量?
大数据·elasticsearch·jenkins
熟透的蜗牛7 小时前
Elasticsearch 8.17.1 JAVA工具类
elasticsearch
普通网友9 小时前
Stable Diffusion 图片背景完美替换
人工智能·搜索引擎·ai作画·stable diffusion·midjourney
九圣残炎11 小时前
【ElasticSearch】 Java API Client 7.17文档
java·elasticsearch·搜索引擎
risc12345613 小时前
【Elasticsearch】HNSW
elasticsearch
我的棉裤丢了14 小时前
windows安装ES
大数据·elasticsearch·搜索引擎
罗小罗同学15 小时前
人工智能的出现,给生命科学领域的研究带来全新的视角|行业前沿·25-01-22
人工智能·搜索引擎·生命科学
乙卯年QAQ16 小时前
【Elasticsearch】RestClient操作文档
java·大数据·elasticsearch·jenkins
AI_Tool16 小时前
纳米AI搜索官网 - 新一代智能答案引擎
人工智能·搜索引擎