gpt4 book ai didi

javascript - AMD(Lazyloading)真的高效吗?

转载 作者:行者123 更新时间:2023-11-28 15:41:03 28 4
gpt4 key购买 nike

我一直在开发一个单页应用程序,现在它已经变得非常庞大。我从 Require JS 和 AngularJS 开始,但是组件太多,加载单个页面会向服务器发出大约 40-50 个请求(包括模板文件)。

即使为所有 future 请求缓存数据,第一次尝试发送 40-50 个请求的成本也相当昂贵,而且在较慢的互联网连接上速度非常慢。

我的理解是,如果我们连接并创建两个脚本文件 - Vendors.js (不经常更改)和 Private.js (每次都会更改)发布)页面加载时间会快得多。如果这是真的那么为什么有人会使用 requirejs 呢?

最佳答案

你只能比较效率,不能对此做出绝对的断言。所以你需要问

Is sending 40-50 requests more efficient than 1 request for a concatenated file?

不,绝对不是。虽然您可能因为并行化而获得很少的优势(仍然不太可能),但开销太大了。

Is not requiring an unneeded file more efficient than always loading the file?

是的,显然是这样。

这就是延迟加载的全部内容:它仅在需要时才请求文件,而不是过早地下载所有内容。

因此,对于一个快速的应用程序,您需要确定始终(或最常)需要哪些资源,并将它们连接到一个文件。其他很少需要的模块可以单独运行。像您一样考虑更改资源的缓存可以进一步优化。

why would someone even use AMD at all?

因为它拥抱模块化。此外,它还支持非常灵活的部署策略 - 从开发中独立服务每个模块到使用优化器进行生产。无需更改您的代码文件。

关于javascript - AMD(Lazyloading)真的高效吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23731436/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com