小程序在 ios 下请求 api 很慢, 安卓和模拟器很快, 求解

2020-04-14 09:55:42 +08:00
 CoderLife

最近一两周发现 ios 上请求 api 巨慢, 模拟器上在 1 秒之内, 在 ios 上要 7,8 秒, 或更长, 用远程调试也是一样. 网上搜索没有找到确切答案, 有人说 dns 的问题.

我现在请求的域名是: api1.a.example.com, 我换成 api2.a.example.com 一样没有改观.

证书用的是 let's encrpyt, *.a.example.com

大家有遇到这种问题吗?

6083 次点击
所在节点    程序员
31 条回复
52icarus
2020-04-14 10:56:25 +08:00
如果是 http 请求是不是会快。我之前因为 https 慢把请求换成了 http
zongren
2020-04-14 10:58:07 +08:00
试试 safari 访问?
kingyifa
2020-04-14 10:58:30 +08:00
是不是手机开了 VPN 忘记关了
Latin
2020-04-14 11:03:09 +08:00
无解那就上 cdn 吧
Vegetable
2020-04-14 11:04:30 +08:00
@52icarus 小程序用 http 吗?
MonoLogueChi
2020-04-14 11:16:31 +08:00
微信不是用的内置 DNS 吗,腾讯云的 httpdns
w99w
2020-04-14 11:22:08 +08:00
有没有可能是 vpn ?或者 charles 抓包的问题?
em70
2020-04-14 11:26:21 +08:00
7,8 秒肯定不正常,应该与证书无关,你可以用一个 hello world 试试,排除逻辑原因,然后换其他不同服务器 API,排除服务器互联互通原因
qiayue
2020-04-14 11:31:10 +08:00
换证书有效
Kiriya
2020-04-14 11:34:16 +08:00
据说 let's encrpyt, *.a.example.com 被 DNS 污染了
speculatorA
2020-04-14 12:07:56 +08:00
试过在 iOS 、小程序、web 请求正常,在 Android 第一次请求很慢。
后面发现在三次握手时异常时长。
最后记得是 DNS 那块做了兼容解决的。
CoderLife
2020-04-14 12:08:44 +08:00
@52icarus 小程序强行得用证书
CoderLife
2020-04-14 12:09:02 +08:00
@kingyifa 不是 VPN 的问题, 4G 和 WIFI 一样
CoderLife
2020-04-14 12:12:22 +08:00
@zongren chrome 和 safari 都很快
CoderLife
2020-04-14 12:13:13 +08:00
@qiayue 刚把证书更新了一下, 一样很慢,
CoderLife
2020-04-14 12:14:03 +08:00
@Kiriya 需要换个其它厂的证书?
CoderLife
2020-04-14 12:14:36 +08:00
@speculatorA 这个怎么做的呢?
qloog
2020-04-14 12:20:09 +08:00
阿里云买个免费证书试试。可以买 N 个免费证书。
lmfx89
2020-04-14 12:26:04 +08:00
最近刚经历这个问题,只能在 iOS 端复现,替换 LE 以外的免费证书可解。
also24
2020-04-14 12:34:10 +08:00
先抓包确认时间消耗在哪个步骤啊……

如果应用层抓包时问题消失,就抓网络层的…

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/662189

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX