原英文版地址: https://www.elastic.co/guide/en/elasticsearch/reference/7.7/_memory_lock_check.html, 原文档版权归 www.elastic.co 所有
本地英文版地址: ../en/_memory_lock_check.html

内存锁检查 (Memory lock check)

当 JVM 进行大规模垃圾回收时,它会触及堆中的每一页。 如果这些页中的任何一个被交换到了磁盘,它们都必须被交换回内存。 这会导致大量磁盘抖动,而 Elasticsearch 更愿意用这些磁盘抖动来处理请求。 有几种方法可以将系统配置为禁用交换。 一种方法是通过 mlockall (Unix)或 虚拟锁(Windows) 请求 JVM 锁定内存中的堆。 这是通过 Elasticsearch 设置 bootstrap.memory_lock 完成的。 然而,在某些情况下,该设置可以传递给 Elasticsearch,但 Elasticsearch 无法锁定堆(例如,如果用户 elasticsearch 没有 memlock unlimited)。 内存锁检查验证 是否 启用了 bootstrap.memory_lock 设置,也就是 JVM 是否能够成功锁定堆。 要通过内存锁检查,你可能需要配置 bootstrap.memory_lock