阿里云的 cdn 为啥不支持 websocket? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
shensi

阿里云的 cdn 为啥不支持 websocket?

  •  
  •   shensi Dec 14, 2016 16495 views
    This topic created in 3424 days ago, the information mentioned may be changed or developed.

    在阿里云服务器用 nodebb 搭了一个论坛,为了加速就上了 cdn 结果发现阿里云的 cdn 不支持 websocket 。网上搜了下好多人都被这个问题困扰,我想了解一下这个支持是非常难做的事情吗? 有没有用 nodebb+阿里 cdn 的朋友,有没有什么经验绕过这个问题?弄个子域名做 websocket 吗,在 nodebb 里面怎么修改呢?

    25 replies    2020-04-26 00:22:32 +08:00
    mytsing520
        1
    mytsing520  
    PRO
       Dec 14, 2016
    做的是 HTTP/HTTPS 协议
    spwei
        2
    spwei  
       Dec 14, 2016
    websocket 本身就不适用 cdn ,每次请求都回源,加速啥呢?
    est
        3
    est  
       Dec 14, 2016
    CDN 为啥要支持 websocket 。。。。。。

    就好像问自动挡的车为啥不能自己抬离合一样奇怪。
    elarity
        4
    elarity  
       Dec 14, 2016
    好 2B 的问题
    shensi
        5
    shensi  
    OP
       Dec 14, 2016
    好吧,受教了,谢谢各位。
    lhbc
        7
    lhbc  
       Dec 14, 2016   1
    产品不一样
    CloudFlare 做的是全站加速
    阿里 CDN 主要还是静态加速
    shensi
        8
    shensi  
    OP
       Dec 14, 2016
    @lhbc 嗯 谢谢您的认真回答,确实是产品定位不同,不过对于很多用户来说,全站加速也是一个重要需求,也许有一天阿里云也会跟进吧,腾讯云都实现了。

    至于楼上一上来就喷 2B 问题的,直接就是毁社区氛围,每个人水平不一样,问一个很简单的问题不等于 2B ,何况问题并不是不存在的。
    lhbc
        9
    lhbc  
       Dec 14, 2016
    @shensi 全站加速涉及的技术细节更多
    技术壁垒对阿里来说是没有的,只是产品定位、研发投入、市场运营的问题
    ragnaroks
        10
    ragnaroks  
       Dec 14, 2016
    @shensi V2EX 现在人多了必然会有一些老鼠屎在里面,作为 a 站基佬其实蛮怀恋以前只有小学生的 b 站
    shensi
        11
    shensi  
    OP
       Dec 14, 2016
    @lhbc 我也是觉得以阿里的技术应该不难解决的 不过既然暂时没有就只好找替代方案,单独把 websokect 拎出来,其他上 cdn 。所以来看看有没有人有经验处理 nodebb 的 websocket ,还是我自己摸索好了,应该也不难。
    shensi
        12
    shensi  
    OP
       Dec 14, 2016   1
    @ragnaroks 我还好,脸皮厚一点被骂了还会继续问,但是可以想象很多人怕被喷不敢提问就无法进步的场景。术业有专攻,每个人都会有遇到问题的时候,技术社区本来就是要互相帮助,氛围差了就会变成灌水社区,现在每天的热门也基本都是技术无关的了。。。
    lhbc
        13
    lhbc  
       Dec 14, 2016
    @shensi websocket 直接丢 BGP 上吧
    走一层反代出问题的概率高,而且可能有些 CDN 对连接数有限制
    shensi
        14
    shensi  
    OP
       Dec 14, 2016
    @lhbc 刚从 nodebb 官方论坛问到了解决方案,把 socket.io 的 transports 设置为 polling 就解决了。现在还是个刚起步的小论坛,等发展到一定程度再按您说的配置 BGP 吧,非常非常感谢。
    Actrace
        15
    Actrace  
       Dec 14, 2016
    websocket 可以用微林的 vxTrans 来做加速。
    julyclyde
        16
    julyclyde  
       Dec 14, 2016
    我一直觉得全站加速是伪产品……
    xiamx
        17
    xiamx  
       Dec 15, 2016
    > 把 socket.io 的 transports 设置为 polling 就解决了。
    这也是解决方案? 都 polling 了还用 websocket 做啥
    czb
        18
    czb  
       Dec 15, 2016 via Android
    我觉得并不是全站加速还是静态加速的问题 CDN 除了缓存还能优化网络路径的质量 一般机房到机房的质量会比终端到机房好 而且中国还有三大运营商
    mytsing520
        19
    mytsing520  
    PRO
       Dec 15, 2016
    赞同 @czb 的说法, CDN 的主要功能还是间接协助优化了网络路径质量,三大运营商之间,三大运营商和专网(教育网、科技网、长城网)之间还有互联互通的问题。
    shensi
        20
    shensi  
    OP
       Dec 15, 2016 via Android
    @xiamx 就算是暂时放弃 Websocket 了咯,因为是集成的聊天模块,自己重新做费时费力也做得不好,这样至少可以先用着了。
    shensi
        21
    shensi  
    OP
       Dec 15, 2016 via Android
    @czb 你说的有道理,当年那电信到网通超级慢的梗现在也并不是就不存在了,所以借用 CDN 确实有好处的
    shensi
        22
    shensi  
    OP
       Dec 15, 2016 via Android
    我本人并不是专业做后端的,用 nodeBB 搭一个论坛而已,直接把整站扔到 CDN 上面,结果聊天功能因为是 websocket 出 bug 了,聊天本来并不需要加速,但总要可用是吧,特地把聊天功能提出来重新弄也很麻烦,所以采取了 polling 方案。对于论坛程序本身而言改动最小,将来如果换到腾讯云之类就可以直接开 websocket 继续用。所以也不失为一种虽不完美但可用的方案。
    orangejx
        23
    orangejx  
       Apr 9, 2019   1
    楼主,刚刚发现,现在阿里云的 cdn 已经支持 websocket 了。刚刚在测试的时候,因为服务器使用了 cdn,一直调试不通,一番折腾下来才发现普通的阿里云 cdn 是不支持 websocket 的,需要使用全站加速才支持 websocket。
    iugo
        24
    iugo  
       Sep 25, 2019
    即便每次都回源, 如果能优化网络质量还是很有意义的.

    楼主的问题并不傻. 很有意义.
    suiguoguo
        25
    suiguoguo  
       Apr 26, 2020
    @spwei 大佬的回答让人很惊叹
    About     Help     Advertise     Blog     API     FAQ     Solana     840 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 55ms UTC 20:39 PVG 04:39 LAX 13:39 JFK 16:39
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86