我正在尝试在Scala-Play应用程序中为DNS查找设置TimeToLive设置.我使用Play 2.5.9和Scala 2.11.8并遵循AWS指南.我尝试了以下方法:
在application.conf中
// Set DNS lookup time-to-live to one minute
networkaddress.cache.ttl=1
networkaddress.cache.negative.ttl=1
Run Code Online (Sandbox Code Playgroud)在AppModule或EagerSingleton中(代码类似)
class AppModule() extends AbstractModule {
Security.setProperty("networkaddress.cache.ttl", "1")
Security.setProperty("networkaddress.cache.negative.ttl", "1")
...
}
Run Code Online (Sandbox Code Playgroud)作为环境变量传递:
sbt -Dsun.net.inetaddr.ttl=1 clean run
Run Code Online (Sandbox Code Playgroud)我在应用程序中有以下测试代码:
for (i <- 1 to 25) {
System.out.println(java.net.InetAddress.getByName("google.com").getHostAddress())
Thread.sleep(1000)
}
Run Code Online (Sandbox Code Playgroud)
这始终打印相同的IP地址,例如216.58.212.206.对我来说,看起来上面指定的方法都没有任何效果.但是,也许我正在测试其他东西而不是TTL的价值.因此,我有两个问题: