移动解析 HTTPDNS HTTPDNS 服务 IP 线路访问失败的应对方案

在部分运营商线路尝试访问移动解析 HTTPDNS 服务主 IP 地址119.29.29.98失败时,可参考以下应对方案。

相关产品
移动解析 HTTPDNS 产品页,含版本规格、价格与购买入口。

一、新版本 SDK 接入:

新版 iOS SDK v1.11.0,Android SDK v4.10.0将不受影响。该版本具备实时下发服务 IP 的能力,当出现服务 IP 不可用的情况,能够对服务 IP 进行替换,避免影响解析服务。

二、老版本 SDK 接入:

1. 解析成功率:当前 SDK 内部使用了 LocalDNS 和备份 IP 进行兜底,解析成功率不受影响。

2. 解析时延:SDK 会周期性尝试探测服务可用性,导致每十分钟解析时延会间歇性增加一次,如果你需要对解析时延进行优化,可采取调整 HTTPDNS SDK 的解析超时时间方案,可参考 HTTPDNS SDK解析时延优化方案。

3. 建议尽快升级至最新版 SDK:iOS SDK v1.11.0及以上(iOS SDK 发布动态),Android SDK v4.10.0及以上(Android SDK 发布动态)。

三、三、API 接入的影响以及应对方案

当服务 IP 不可用时,如你没有做好容灾,可能导致服务不可用。建议你尽快优化获取服务 IP 的方式,不再使用固定服务IP,通过“启动 IP 接口” 获取服务 IP,拿到服务 IP 后再请求 HTTPDNS 服务,具体步骤如下:

四、术语介绍

·服务 IP:用于提供 HTTPDNS 解析服务的 IP,例如119.29.29.98。

·启动 IP:用于调用 API,动态获取服务 IP 列表。

注意:说明:

五、接入流程

1. 通过启动 IP,调用接口获取服务 IP 列表(接口使用方式后面有说明)。

2. 从 IP 列表中轮询/随机选择服务 IP ,发起解析请求。

3. 如果 IP 列表中,全部服务 IP 均调用失败,重新获取服务 IP 列表。

4. 定时调用启动 IP 更新服务 IP 列表(建议每12小时),保持服务 IP 列表的有效性,或者在特殊场景下进行调用,例如:

·客户端冷启动时进行更新

·切换网络环境时

六、获取 IP 列表接口说明

接口描述

接口请求地址:http(s)://{启动IP}/conf?+ {请求参数}。

请求方式:POST 或 GET

1. HTTP 请求参数

参数名 参数含义 是否必选 取值 加密 说明
id 用户标识(即授权 ID) 是 1 – 100000 否 如果使用 AES、DES 加密方式,必须传入授权 ID,不需要进行加密。
alg 选择使用何种算法 否 [aes/des] 否 默认使用 DES 算法,不同算法具有不同密钥。

HTTP 请求/返回示例

·输入示例:

curl "http://{启动IP}/conf?id=xxxx"

·解密后返回格式:

log:0|domain:0|ip:119.29.29.98;119.28.28.98|ttl:60

注意:说明:

注意:参数“ip”后面的结果为服务 IP,不同服务 IP 采用分号分隔,其余参数可以忽略。

2. HTTPS 请求参数

参数名 参数含义 是否必选 取值 加密 说明
token 使用 HTTPS 方式的标识 是 整型数据 否 token 获取请参见 配置信息说明。

HTTPS 请求/返回 示例:

·输入示例:

curl -S -s -k "https://{启动IP}/conf?token=xxxx"

·返回格式:

·log:0|domain:0|ip:119.29.29.98;119.28.28.98|ttl:60

注意:说明:

注意:参数“ip”后面的结果为服务 IP,不同服务 IP 采用分号分隔,其余参数可以忽略。

七、1. 本次建议哪些用户需要升级?

·SDK 接入的用户:当前 SDK 不是最新版的需要升级。最新版 SDK:iOS SDK v1.11.0及以上(iOS SDK 发布动态),Android SDK v4.10.0及以上(Android SDK 发布动态)。

·API 接入的用户:未使用启动 IP 获取 HTTPDNS 服务 IP,需要升级 API 的调用方式。

八、2. 启动 IP 是否也有不可用的情况?

会有,但是当前启动 IP 区分提供给不同的客户,同时启动 IP 不用于实际解析业务,仅用于拉取服务IP,不可用的概率大大降低。

九、3. 本次是否强制升级,是否有升级截止时间?不升级会有什么后果?

本次升级是对用户的建议,不强制升级,没有时间限制。根据这篇档第二、三点,如果用户有正常业务在使用 HTTPDNS SDK,解析时延可能会有影响;使用 API 调用,如果不升级,需要自己做好 localDNS 的兜底策略。

十、4. 启动 IP 建议如何使用,每次解析前还需要调用启动 IP 吗?是否会影响解析时延?

不必每次解析前都通过启动 IP 拉取一次解析的服务IP。可以采用定时调用的方式,启动 IP 更新服务 IP 列表(建议每12小时),保持服务 IP 列表的有效性,或者在特殊场景下进行调用,例如:客户端冷启动时进行更新、切换网络环境时。

十一、5. 历史版本的 SDK 是否会停用?

不会停用,本次只是对客户的建议。为提高容灾性,建议尽快升级至最新版 SDK:iOS SDK v1.11.0及以上(iOS SDK 发布动态),Android SDK v4.10.0及以上(Android SDK 发布动态)。

十二、6. 如何查看历史版本的 SDK 的版本迭代的变更内容?

点击查看:iOS 版本迭代变更内容、Android 版本迭代变更内容。

赞 (0)
上一篇 4天前
下一篇 4天前