V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
CoderLife
V2EX  ›  程序员

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

  •  
  •   CoderLife · 2020-04-14 09:55:42 +08:00 · 6049 次点击
    这是一个创建于 1682 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

    大家有遇到这种问题吗?

    第 1 条附言  ·  2020-04-14 12:10:23 +08:00
    不是 VPN 的问题, 试过 WIFI 和 4G, 换过多台 IOS, 一样

    测试过一个页面只有两个 rest 请求, 一样慢
    第 2 条附言  ·  2020-04-14 12:11:18 +08:00
    域名在阿里云, 用的 dnspod 解析的
    第 3 条附言  ·  2020-04-14 12:59:40 +08:00
    经确认, 换了一个 comodoca, 速度起来了,
    墙太可恨了,
    没有 LE 的泛域名, 只能一个一个域名的去生成,

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

    如果应用层抓包时问题消失,就抓网络层的…
    huangtao728
        21
    huangtao728  
       2020-04-14 12:56:41 +08:00 via Android
    Let's Encrypt 的 OCSP 服务域名最近被墙污染了,可以暂时替换别的证书解决,或者启用 OCSP Stapling
    CoderLife
        22
    CoderLife  
    OP
       2020-04-14 12:58:20 +08:00
    @qloog
    @lmfx89
    @huangtao728
    @also24
    换了个 comodaca 搞定了, 多谢,
    太可恨了,
    happyzed
        23
    happyzed  
       2020-04-14 14:46:26 +08:00
    你确定 ios 上只有小程序的请求慢吗?我刚开始从安卓换到 ios,我的世界都被变慢了
    Doraemontree
        24
    Doraemontree  
       2020-04-14 14:52:32 +08:00
    最近的公司的某个项目也是,iOS 请求 7 8 秒 安卓很快
    CoderLife
        25
    CoderLife  
    OP
       2020-04-14 14:57:30 +08:00
    @happyzed 确定, 已解决, 换证书就好了
    @Doraemontree
    shunfa52000
        26
    shunfa52000  
       2020-04-14 15:03:24 +08:00
    所有接口都很慢?有没有可能是访问到 ipv6 的网络去了?
    Doraemontree
        27
    Doraemontree  
       2020-04-14 15:08:47 +08:00
    @CoderLife #25 什么证书,求解一下
    CoderLife
        28
    CoderLife  
    OP
       2020-04-14 16:46:55 +08:00
    @shunfa52000 不知道, 应该没有, 最近没有做什么操作
    CoderLife
        29
    CoderLife  
    OP
       2020-04-14 16:47:24 +08:00
    @Doraemontree 以前用的 LE, 现在换成 comodoca 了
    6yong
        30
    6yong  
       2020-04-14 20:54:51 +08:00
    最近也遇到了 let's encrpyt 的 OCSP 查询地址被 DNS 污染导致超时
    CoderLife
        31
    CoderLife  
    OP
       2020-04-14 23:14:36 +08:00
    @6yong 换了证书瞬间提速
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1053 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 19:30 · PVG 03:30 · LAX 11:30 · JFK 14:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.