twitter finagle 库是否自行进行 DNS 缓存?我问这个是因为我们删除了 vip 后面的一些主机,但他们仍然收到来 self 们客户的请求。
如果有这样的缓存,如何设置超时?
最佳答案
是的,Finagle 在内部缓存 DNS。详细信息可以在 Resolver.scala
的 com.twitter.finagle.AsyncInetResolver
类中找到。
Finagle 使用 networkaddress.cache.ttl
系统属性,因此只能更改整个 JVM 的 TTL。
我建议使用以下代码片段来处理主机频繁变化的服务:https://gist.github.com/agleyzer/6909056 .它允许在每个服务的基础上指定 TTL。这在处理使用 Amazon Route 53 故障转移路由策略的服务时特别有用。
关于scala - 刷新 twitter finagle 库中的 DNS 缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28641037/