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

ajax 请求太多大家是肿么优化的

  •  
  •   tbaby · 2016-03-23 18:40:01 +08:00 · 3495 次点击
    这是一个创建于 3202 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如果页面使用模块化开发那就会涉及到很多的 ajax 请求,这种情况大家一般是怎么优化的?

    9 条回复    2016-06-22 17:33:56 +08:00
    BOYPT
        1
    BOYPT  
       2016-03-23 18:43:51 +08:00   ❤️ 1
    看你要优化什么啊
    优化页面载入速度,就把请求尽可能并行
    优化服务器响应,就缓存、静态 json 扔 CDN 、 nginx 直接提供缓存数据等等等等
    murmur
        2
    murmur  
       2016-03-23 18:55:25 +08:00
    该合并的合并 该缓存的缓存 该延迟加载的延迟加载
    现在这么多单页面 app ajax 不多就见鬼了
    关键要找到瓶颈 不要看到 ajax 多就吓到
    当然你说如果是搞直播 聊天这种就得 websocket 了
    otakustay
        3
    otakustay  
       2016-03-23 19:09:35 +08:00
    先确定这么多 ajax 请求影响你了吗,没影响就无视

    能用 http/2 的直接上
    剩下的能用缓存解决的问题坚决先用缓存解决
    不能的建中间件做请求合并
    再不能的建 websocket 等通道做复用
    再不能……跳河吧
    vikeria
        4
    vikeria  
       2016-03-23 19:35:16 +08:00 via iPhone
    @otakustay 跳河, 2333333
    liuzhoou
        5
    liuzhoou  
       2016-03-23 22:48:33 +08:00 via Android
    darluc
        6
    darluc  
       2016-03-23 22:56:13 +08:00
    可以考虑使用 JSON RPC ,采用批量操作 http://log.zvz.im/2015/10/06/JSON-RPC/
    zxgngl
        7
    zxgngl  
       2016-03-23 23:22:57 +08:00   ❤️ 1
    说句题外话, Ajax 的本质是一种 hack ,并不是一种优雅的解决方案。服务器端与网页客户端上向通信的最佳解决方案是 Websocket ,多数情况下它也是最优雅的解决方案。但是 Websocket 现在有一个坑,就是链接断后重连的逻辑要你自己实现,可能对于大多数人来说工资可能对不起这个工作量了: P 当然,你也可以使用第三方解决方案如 socket.io 库来解决需要重连的问题。
    50341
        8
    50341  
       2016-06-22 17:33:45 +08:00
    推荐一篇前前端同事写的 blog
    50341
        9
    50341  
       2016-06-22 17:33:56 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2624 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 15:22 · PVG 23:22 · LAX 07:22 · JFK 10:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.