买了阿里云杭州(华东 1 区域 D ) 作为微信支付中间服务器。。 调试后发现所有的微信 api 都在 3.7 秒以上,我一直以为是微信支付超烂的。。 持续了半个月。开始调试问题。
后来发现问题出在 DNS 解析上。(在本地速度都是刚刚的。。) 正好发现微信有个调试工具。 下面看图 默认阿里云 ECS dns ( 2-3 秒) https://i.v2ex.co/Ruz33DtC.png
然后切换到阿里公共 dns 223.5.5.5 ( 5ms ) https://www.v2ex.com/i/8xfZc506.png
原来 3.7 秒的 api 请求时间变成 0.25 秒。。
这有毒吧,故意的吧。。。
1
lslqtz 2017-01-06 00:37:54 +08:00
公共 DNS 用户多,有缓存。
阿里云的内网 DNS 不一定有人用微信 API 。。 |
2
Evovil OP 我找到官方解释了:
微信解释: 由于阿里云使用的 BGP ,需要确认解析出来的 IP 是否为 182.254.44.159 ,否则需要调整 DNS 设置,使用阿里本身的 DNS 服务器 阿里解释 : 售后工程师 : 您好, 见附件中微信支付文档里提的,如何理解“阿里本身的 DNS 服务器“ 请您参考 |