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

客户端一侧统计 https 比 http 平均响应时长更短

  •  1
     
  •   justfly · 2017-06-26 12:21:51 +08:00 · 3027 次点击
    这是一个创建于 2701 天前的主题,其中的信息可能已经有所发展或是发生改变。
    工作业务准备迁到 https,前期做了一下响应时长的布点:

    两波用户,地区分布均匀,分别使用 https 和 http 协议,均为 HTTP/1.1,访问相同机房的相同 API,客户端网络访问代码相同,客户端计算响应时长并上报。

    统计了总共约 300W 条上报数据,平均响应时间表现来看 https 比 http 更低,但响应长度越大差距倾向于越不明显:

    API 1 http 261.048
    API 1 https 249.078
    API 2 http 150.849
    API 2 https 123.712
    API 3 http 146.97
    API 3 https 120.916

    PS. HTTPS 配置的 ssllabs 评分是搞到了 A 的。客户端可能有一定的连接复用和 session 复用,对耗时的 TLS 连接建立有优化,但是不应该导致速度比明文 HTTP 更快。服务端没有开启 HTTP/2 支持。

    不负责的猜测,跟运营商的区别对待有关?
    第 1 条附言  ·  2017-06-26 14:30:48 +08:00
    @chyiz 按运营商区分来看结果依然不变 但是运营商之间有差异:

    联通响应时长最短,http https 之间的响应时长区别最小

    API1,http,"电信","274.099"
    API1,http,"移动","267.439"
    API1,http,"联通","226.94"
    API1,https,"电信","262.256"
    API1,https,"移动","243.831"
    API1,https,"联通","226.895"

    API2,http,"电信","171.282"
    API2,http,"移动","146.408"
    API2,http,"联通","122.674"
    API2,https,"电信","139.106"
    API2,https,"移动","118.017"
    API2,https,"联通","103.555"

    API3,http,"移动","158.519"
    API3,http,"电信","145.02"
    API3,http,"联通","121.443"
    API3,https,"电信","125.653"
    API3,https,"移动","124.369"
    API3,https,"联通","105.512"

    BGP 多线机房。
    第 2 条附言  ·  2017-06-26 17:26:31 +08:00
    @drolmen 貌似淘宝全站 HTTPS 后确实有 HTTPS 性能更好的言论:

    『而据阿里巴巴技术保障部技术专家李振宇介绍,阿里电商在启用全站 HTTPS 后,性能不降反升,用户访问网站和移动端更为流畅。』

    https://yq.aliyun.com/articles/2978

    看了一下浏览器的请求协议还是 HTTP/1.1。
    17 条回复    2017-06-26 16:43:28 +08:00
    v2orz
        1
    v2orz  
       2017-06-26 12:25:27 +08:00
    关注一下,什么情况
    whileFalse
        2
    whileFalse  
       2017-06-26 12:56:01 +08:00
    用 s 的用户和不用 s 的你们是怎么分配的
    watzds
        3
    watzds  
       2017-06-26 12:58:45 +08:00 via Android
    Stack overflow 不就是为了性能迁移到 https 了嘛
    justfly
        4
    justfly  
    OP
       2017-06-26 13:37:59 +08:00
    @whileFalse 没有特定规则 用户属性上没有差别,仅不同应用分发途径
    chyiz
        5
    chyiz  
       2017-06-26 14:06:56 +08:00
    如果是运营商那边的问题的话,难道是 http 流量劫持会有额外延迟,https 是直接放过所以反而快?
    chyiz
        6
    chyiz  
       2017-06-26 14:09:14 +08:00
    LZ 有 300W 数据的话也许可以比较一下各地运营商的区别?
    justfly
        7
    justfly  
    OP
       2017-06-26 14:09:52 +08:00
    @watzds stackoverflow 那句话的意思是为了性能要上 HTTP/2,为了 HTTP/2 又不得不 HTTPS。
    justfly
        8
    justfly  
    OP
       2017-06-26 14:10:30 +08:00
    @chyiz 好建议!
    nfroot
        9
    nfroot  
       2017-06-26 14:12:21 +08:00
    据说是 QOS 有关,但是数据包数量都不一致……
    akira
        10
    akira  
       2017-06-26 14:15:09 +08:00
    明文包 会被强制关键字过滤一遍?

    换个端口跑 http 测试下呢
    ZRS
        11
    ZRS  
       2017-06-26 14:32:12 +08:00
    猜 http 明文会被运营商捋一遍...
    gongjianwei
        12
    gongjianwei  
       2017-06-26 15:07:07 +08:00 via Android
    HTTP2 也可以不用 HTTPS,但是这个很少浏览器支持
    为什么不肯部署 HTTP2 呢?
    justfly
        13
    justfly  
    OP
       2017-06-26 15:13:48 +08:00
    @gongjianwei 没有不肯啊 HTTP/2 肯定会部署的。只是在部署 HTTP/2 之前就遇到这个现象,拿出来大家讨论下。
    gongjianwei
        14
    gongjianwei  
       2017-06-26 15:16:20 +08:00 via Android
    @justfly 这样……
    jiangzhuo
        15
    jiangzhuo  
       2017-06-26 15:20:44 +08:00
    楼主要不要再按照浏览器这个维度统计一下
    justfly
        16
    justfly  
    OP
       2017-06-26 15:27:11 +08:00
    @jiangzhuo 我们统计的 API 不是 web 页面 没有浏览器
    drolmen
        17
    drolmen  
       2017-06-26 16:43:28 +08:00
    这就是淘宝所有连接 http 换成 https 其中的一个原因
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2552 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 00:20 · PVG 08:20 · LAX 16:20 · JFK 19:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.