是否可以在 JVM/JAVA 上使用诸如 nscd、dnsmasq 之类的操作系统级 DNS 缓存?
我读过很多信件,说 JVM 有自己的 DNS 缓存。
https://www.ibm.com/support/pages/understanding-tuning-and-testing-inetaddress-class-and-cache https://stackoverflow.com/questions/1256556/how-to-make-java-honor-the-dns-caching-timeout
但是 JVM 是否可以使用系统级 DNS 守护进程(例如 nscd)?
答案1
JVM 是否可以使用系统级 DNS 守护进程(例如 nscd)?
据我所知不是直接的,只是间接的。
这首次引用以。。开始:
... 这些方法依赖于操作系统来执行解析。操作系统将尝试通过执行查找来解析给定的主机名... 操作系统完成查找后,会将结果传回 JVM。
翻译:
当您的操作系统配置为使用 nscd 时,默认情况下,使用该 InetAddress 类的 Java 应用程序会隐式地遵循该配置。
当 Java 应用程序请求的资源存在于 nscd 缓存中时,操作系统将提供缓存的资源作为响应。当请求的资源不存在于缓存中时,操作系统必须先进行查找。查找的结果将返回给您的 Java 应用程序,并添加到 nscd 缓存中。