Elasticsearch 在部署时,对 Linux 的设置有哪些优化方法?

1、64 GB 内存 的 机 器 是 非 常 理 想 的 , 但是 32 GB 和 16 GB 机器 也 是 很 常 见 的 。少于 8 GB 会适 得 其 反 。

2、如 果 你 要 在 更 快 的 CPUs 和更 多 的 核 心 之 间 选 择 , 选 择 更 多 的 核 心 更 好 。 多个内 核 提 供 的 额 外 并 发 远 胜 过 稍 微 快 一 点 点 的 时 钟 频 率 。

3、 如果 你 负 担 得 起 SSD, 它将 远 远 超 出 任 何 旋 转 介 质 。 基于 SSD 的节 点 , 查询和 索 引 性 能 都 有 提 升 。 如 果 你 负 担 得 起 , SSD 是一 个 好 的 选 择 。

4、即使 数 据 中 心 们 近 在 咫 尺 ,也要 避 免 集 群 跨 越 多 个 数 据 中 心 。绝对 要 避 免 集 群跨越 大 的 地 理 距 离 。

5、请 确 保 运 行 你 应 用 程 序 的 JVM 和服 务 器 的 JVM 是完 全 一 样 的 。 在Elasticsearch 的几 个 地 方 , 使 用 Java 的本 地 序 列 化 。

6、通 过 设 置 gateway.recover_after_nodesgateway.expected_nodes、

gateway.recover_after_time 可以 在 集 群 重 启 的 时 候 避 免 过 多 的 分 片 交 换 , 这 可能会 让 数 据 恢 复 从 数 个 小 时 缩 短 为 几 秒 钟 。

7、 Elasticsearch 默认 被 配 置 为 使 用 单 播 发 现 , 以 防 止 节 点 无 意 中 加 入 集 群 。 只有在 同 一 台 机 器 上 运 行 的 节 点 才 会 自 动 组 成 集 群 。 最 好 使 用 单 播 代 替 组 播 。

8、不 要 随 意 修 改 垃 圾 回 收 器 ( CMS)和 各 个 线 程 池 的 大 小 。

9、把 你 的 内 存 的 ( 少 于 ) 一 半 给 Lucene(但 不 要 超 过 32 GB!) , 通 过ES_HEAP_SIZE 环境 变 量 设 置 。

10、内 存 交 换 到 磁 盘 对 服 务 器 性 能 来 说 是 致 命 的 。 如 果 内 存 交 换 到 磁 盘 上 , 一 个100 微秒 的 操 作 可 能 变 成 10 毫秒 。 再想 想 那 么 多 10 微秒 的 操 作 时 延 累 加 起来。 不难 看 出 swapping 对于 性 能 是 多 么 可 怕 。

11、 Lucene 使用 了大量的文件 。 同 时 , Elasticsearch 在节 点 和 HTTP 客 端之间 进 行 通 信 也 使 用 了 大 量 的 套 接 字 。 所有 这 一 切 都 需 要 足 够 的 文 件 描 述 符 。你应该 增 加 你 的 文 件 描 述 符 , 设 置 一 个 很 大 的 值 , 如 64,000。

补充 : 索 引 阶 段 性 能 提 升 方 法

1、使 用 批 量 请 求 并 调 整 其 大 小 : 每 次 批 量 数 据 5-- 15 MB 大是 个 不 错 的 起 始 点 。

2、存 储 : 使 用 SSD

3、段和 合 并 :Elasticsearch 默认 值 是 20 MB/s,对机 械 磁 盘 应 该 是 个 不 错 的 设置 。如果 你 用 的 是 SSD,可以 考 虑 提 高 到 100-- 200 MB/s。如果 你 在 做 批 量 导 入 ,完全 不 在 意 搜 索 , 你 可 以 彻 底 关 掉 合 并 限 流 。 另 外 还 可 以 增 加index.translog.flush_threshold_size 设置 , 从 默 认 的 512 MB 到更 大 一 些 的值, 比 如 1 GB,这 可 以 在 一 次 清 空 触 发 的 时 候 在 事 务 日 志 里 积 累 出 更 大 的 段 。

4、如 果 你 的 搜 索 结 果 不 需 要 近 实 时 的 准 确 度 , 考 虑 把 每 个 索 引 的index.refresh_interval 改到 30s。

5、如果 你 在 做 大 批 量 导 入 ,考虑 通 过 设 置 index.number_of_replicas: 0 关闭 副本。

相关推荐
发哥来了2 小时前
主流AI视频生成工具商用化能力评测:五大关键维度对比分析
大数据·人工智能·音视频
無森~2 小时前
MapReduce
大数据·mapreduce
重生之绝世牛码3 小时前
Linux软件安装 —— zookeeper集群安装
大数据·linux·运维·服务器·zookeeper·软件安装
!chen3 小时前
大数据技术领域发展与Spark的性能优化
大数据·性能优化·spark
重生之绝世牛码3 小时前
Linux软件安装 —— kafka集群安装(SASL密码验证)
大数据·linux·运维·服务器·分布式·kafka·软件安装
行业探路者3 小时前
如何利用二维码提升富媒体展示的效果?
大数据·人工智能·学习·产品运营·软件工程
YangYang9YangYan4 小时前
2026高职大数据与会计专业学数据分析的价值分析
大数据·数据挖掘·数据分析
Dxy12393102164 小时前
Elasticsearch 8.13.4 深度进阶指南:从底层架构到高阶实战的全维突围
大数据·elasticsearch·架构
云雾J视界4 小时前
RAG 还是微调?用 Gemini API 打造企业私有知识库的落地路径
大数据·人工智能·api·知识库·rag·gemini
TDengine (老段)4 小时前
TDengine C# 语言连接器进阶指南
大数据·数据库·人工智能·物联网·c#·时序数据库·tdengine