首先说明,返回的IP是服务器这边筛选出的最佳IP列表,在服务器端权重是一样的,也就是没有顺序,具体到您需要客户端最优ip,是要结合客户端网络环境来确定的。
另外需要关注: HTTPDNS 本身是递归域名解析服务,IP源来自权威DNS返回结果。 所以实际应用中要想达到最好效果,需要权威DNS配合更新调度策略,根据 client_ip 返回附近多节点IP,供客户端探测选择。
如果使用Android或iOS SDK的话,V1.1.5及以上版本支持IP探测setIPProbeList,设置IP探测列表。
设置该接口setIPProbeList后,如果解析了相对应的域名,则SDK会对返回的IP进行IP探测,对返回的IP列表进行动态排序,以保证第一个IP是可用性最好的IP,而getIpByHostAsync是固定返回IP数组的第一个IP,所以getIpByHostAsync返回的是探测结果最优IP。
不设置该接口setIPProbeList,那IP数组还是无需的排列,即getIpByHostAsync返回不一定是最优IP,只是未经排列的IP数组中第一个IP。
如果不使用Android或iOS SDK,则需要进行探测,来进行IP优选。
文档内容是否对您有帮助?