在 Java 虚拟机中禁用DNS缓存 - Amazon Neptune

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 Java 虚拟机中禁用DNS缓存

在您想要在多个只读副本之间平衡请求的环境中,您需要禁用 Java 虚拟机 (JVM) 中的DNS缓存,并在创建集群时提供 Neptune 的读取器终端节点。禁用JVMDNS缓存可确保DNS在每个新连接中再次解决该问题,以便将请求分发到所有只读副本中。可以在应用程序的初始化代码中使用以下行执行此操作:

java.security.Security.setProperty("networkaddress.cache.ttl", "0");

但是,上面的 A mazon Gremlin Java 客户端代码提供了更完整、更强大的负载平衡解决方案。 GitHubAmazon Java Gremlin 客户端知道您的集群拓扑,并在您的 Neptune 集群中的一组实例之间公平地分配连接和请求。有关使用该客户端的 Java Lambda 函数示例,请参阅此博客文章