当前位置: 首页 > 面试题库 >

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

岳景明
2023-03-14
本文向大家介绍Elasticsearch 在部署时,对 Linux 的设置有哪些优化方法?相关面试题,主要包含被问及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_nodes、gateway.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 关闭副本。

 

 类似资料:
  • 本文向大家介绍Elasticsearch在部署时,对Linux的设置有哪些优化方法?**相关面试题,主要包含被问及Elasticsearch在部署时,对Linux的设置有哪些优化方法?**时的应答技巧和注意事项,需要的朋友参考一下 面试官:想了解对ES集群的运维能力。 解答: 1)关闭缓存swap; 2)堆内存设置为:Min(节点内存/2, 32GB); 3)设置最大文件句柄数; 4)线程池+队列

  • 本文向大家介绍es6对es5有哪些方面的优化呢?相关面试题,主要包含被问及es6对es5有哪些方面的优化呢?时的应答技巧和注意事项,需要的朋友参考一下 引入了let和const解决了var变量提升带来的问题,同时引入箭头函数解决this访问问题。

  • 本文向大家介绍针对jQuery性能的优化方法有哪些?相关面试题,主要包含被问及针对jQuery性能的优化方法有哪些?时的应答技巧和注意事项,需要的朋友参考一下 show slide animate 等频繁修改 dom 很耗性能,可采用 jquery.transit 插件等 使用单个 id 或 class 选择器当然也是优化点咯,元素选择器是真的会卡 每次调用 $() 其实都是生成一个超大的对象,还

  • 本文向大家介绍请问SQL优化方法有哪些相关面试题,主要包含被问及请问SQL优化方法有哪些时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 通过建立索引对查询进行优化 对查询进行优化,应尽量避免全表扫描

  • 本文向大家介绍vue性能的优化的方法有哪些?相关面试题,主要包含被问及vue性能的优化的方法有哪些?时的应答技巧和注意事项,需要的朋友参考一下 Vue 项目性能优化 — 实践指南

  • 当页面中存在多个css动画,css动画过于复杂,或者电脑性能不足时,都有可能导致动画卡顿。对css动画的优化方法都有哪些?