【发布时间】:2021-03-23 09:50:24
【问题描述】:
我想通过一些参数分发请求。 例如,使用 http DNS 时。
有没有办法为每个请求指定不同的 DNS 解析器? 谢谢!
【问题讨论】:
我想通过一些参数分发请求。 例如,使用 http DNS 时。
有没有办法为每个请求指定不同的 DNS 解析器? 谢谢!
【问题讨论】:
由于connection reuse,无法保证在开始您的请求之前会使用 DNS。为了严格实现您的要求,您应该为每个请求集群创建一个具有不同 DNS 实现的新客户端。
val client1 = client.newBuilder().dns(externalDns).build()
val client2 = client.newBuilder().dns(intranetDns).build()
但如果是按主机名进行拆分,那么您可以覆盖通用 DNS 并使其执行您需要的任何操作。
您应该使用事件侦听器确认您想要的行为。
connections 和 events logging 上的文档。
一个伟大的post on debugging 连接重用。
【讨论】: