Requirejs require.js将来如何与http2一起工作?

Requirejs require.js将来如何与http2一起工作?,requirejs,http2,Requirejs,Http2,在构建应用程序时,最理想的做法是延迟加载模块,但也可以根据需要将其作为批处理1文件下载。Require.js支持异步延迟加载,但不作为批处理,但http2支持批处理。他们会在将来的某个时候统一吗 有人知道吗 谢谢HTTP/2没有“批量”下载,因为它无法自动批量下载多个文件 HTTP/2在HTTP/1.1上的功能是多路复用和HTTP/2推送 通过多路复用,浏览器等客户端可以执行几乎无限数量的并发请求,而HTTP/1.1客户端通常只能执行6个并发请求 通过HTTP/2推送,服务器能够将与主资源关联的

在构建应用程序时,最理想的做法是延迟加载模块,但也可以根据需要将其作为批处理1文件下载。Require.js支持异步延迟加载,但不作为批处理,但http2支持批处理。他们会在将来的某个时候统一吗

有人知道吗

谢谢

HTTP/2没有“批量”下载,因为它无法自动批量下载多个文件

HTTP/2在HTTP/1.1上的功能是多路复用和HTTP/2推送

通过多路复用,浏览器等客户端可以执行几乎无限数量的并发请求,而HTTP/1.1客户端通常只能执行6个并发请求

通过HTTP/2推送,服务器能够将与主资源关联的多个资源推送到客户端

多路复用是协议中内置的,因此不需要在客户端或服务器上进行配置。 需要在服务器上配置HTTP/2推送

require.js
将受益于HTTP/2的这两个特性,但并不是说
require.js
需要“支持”它们

require.js
发出HTTP请求下载模块时,该请求将显示为正常HTTP请求。 如果
require.js
需要下载10多个模块,使用HTTP/1.1,它会发出这些请求,但浏览器基础设施只能同时发出其中6个请求,然后它会在发送更多请求之前等待一些请求得到响应;使用HTTP/2,所有请求都可以并发进行

使用HTTP/2推送,
require.js
可能会请求一个模块,服务器可能会发现它还需要N个其他模块(服务器将从以前的请求中学习请求模式,或者有一个配置告诉它其他模块是什么),服务器将HTTP/2推送其他模块到客户端

在这两种情况下,
require.js
将自动受益于升级到HTTP/2。

HTTP/2没有“批量”下载,因为它无法自动批量下载多个文件

HTTP/2在HTTP/1.1上的功能是多路复用和HTTP/2推送

通过多路复用,浏览器等客户端可以执行几乎无限数量的并发请求,而HTTP/1.1客户端通常只能执行6个并发请求

通过HTTP/2推送,服务器能够将与主资源关联的多个资源推送到客户端

多路复用是协议中内置的,因此不需要在客户端或服务器上进行配置。 需要在服务器上配置HTTP/2推送

require.js
将受益于HTTP/2的这两个特性,但并不是说
require.js
需要“支持”它们

require.js
发出HTTP请求下载模块时,该请求将显示为正常HTTP请求。 如果
require.js
需要下载10多个模块,使用HTTP/1.1,它会发出这些请求,但浏览器基础设施只能同时发出其中6个请求,然后它会在发送更多请求之前等待一些请求得到响应;使用HTTP/2,所有请求都可以并发进行

使用HTTP/2推送,
require.js
可能会请求一个模块,服务器可能会发现它还需要N个其他模块(服务器将从以前的请求中学习请求模式,或者有一个配置告诉它其他模块是什么),服务器将HTTP/2推送其他模块到客户端


在这两种情况下,
require.js
将自动从升级到HTTP/2中获益。

为什么W3C或WHATWG希望与“某个家伙”(恕我直言)编写的require.js统一?不是每个人都想要、需要或使用它。我的意思是,将来是否需要.js支持在http2中使用批量下载?不是特别需要js,而是AMD协议和ES模块自然会从http2中受益。在http2时代,使用typescript编译器生成AMD模块并使用requirejs加载它们是一个强大的解决方案;一个没有汇总、webpack或babel的解决方案。为什么W3C或WHATWG希望与“某个家伙”(恕我直言)编写的require.js统一?不是每个人都想要、需要或使用它。我的意思是,将来是否需要.js支持在http2中使用批量下载?不是特别需要js,而是AMD协议和ES模块自然会从http2中受益。在http2时代,使用typescript编译器生成AMD模块并使用requirejs加载它们是一个强大的解决方案;无需汇总、网页包或babel即可使用的解决方案。