原文地址: https://www.elastic.co/guide/cn/elasticsearch/guide/current/_java_virtual_machine.html, 版权归 www.elastic.co 所有
英文版地址: https://www.elastic.co/guide/en/elasticsearch/guide/current/_java_virtual_machine.html
英文版地址: https://www.elastic.co/guide/en/elasticsearch/guide/current/_java_virtual_machine.html
请注意:
本书基于 Elasticsearch 2.x 版本,有些内容可能已经过时。
本书基于 Elasticsearch 2.x 版本,有些内容可能已经过时。
Java 虚拟机edit
你应该始终运行最新版本的 Java 虚拟机(JVM), 除非 Elasticsearch 网站上另有说明。Elasticsearch, 特别是 Lucene,是一个高要求的软件。Lucene 的单元测试和集成测试经常暴露出 JVM 本身的 bug。这些 bug 的范围从轻微的麻烦到严重段错误,所以,最好尽可能的使用最新版本的 JVM。
Java 8 强烈优先选择于 Java 7。不再支持 Java 6。Oracle 或者 OpenJDK 是可以接受的,它们在性能和稳定性上也差不多。
如果你的应用程序是用 Java 编写并正在使用传输客户端(transport client)或节点客户端(node client),请确保运行你应用程序的 JVM 和服务器的 JVM 是完全一样的。 在 Elasticsearch 的少数几个地方,使用了 Java 的本地序列化(IP 地址、异常等等)。不幸的是,Oracle 的 JVM 在几个小版本之间有修改序列化格式,从而导致奇怪的错误。 这种情况很少见,但最佳实践是客户端和服务器使用相同版本的 JVM。