我想让你注意到我思考了几天的一些事情。HTTP/2协议的新特性和对Web开发的影响。我还想问一些相关的问题,因为HTTP/2使我的年度计划变得不太准确。
由于HTTP/2使用单个多路连接,而不是HTTP 1.x domain sharding中的多个连接,因此不再需要技术。
使用HTTP/1.x,您可能已经将文件放在不同的域中,以增加文件传输到Web浏览器的并行性;内容域网络(CDN)会自动执行此操作,但这对HTTP/2下的性能没有帮助,而且可能会损害其性能。
问题1:HTTP/2是否会将CDN的需求降至最低?
代码文件连接。通常作为单独文件进行维护和传输的代码块被合并为一个文件。然后浏览器根据需要在连接的文件中查找并运行所需的代码。
Q2. HTTP/2是否会消除连接具有类似扩展名(css、javascript)的文件的需要,以及使用强大的Grunt和Gulp工具来实现这一点?
问:另外,为了简化问题并使问题更加简洁,我想大致问一下,您可以预见HTTP/2对Web开发的其他影响是什么?
2条答案
按热度按时间g6ll5ycj1#
问题1:HTTP/2是否会最大限度地减少对CDN的需求?
它肯定会稍微改变平衡,前提是你使用正确的软件。我谈论平衡是因为CDN需要花费金钱和管理时间。
Q2. HTTP/2是否会消除连接具有类似扩展名(css、javascript)的文件的需要,以及使用强大的Grunt和Gulp工具来实现这一点?
不幸的是,并不需要连接,除非你提交的文件非常小,比如几百个字节。其他的一切都是相关的,包括缩小和adding those ugly query strings for cache busting。
问题3:另外,为了简化问题并使问题更加简洁,我想问一个非常笼统的问题,您可以预见HTTP/2对Web开发的其他影响是什么?
这是一个棘手的问题。一方面,HTTP/2是在Web成熟的时候出现的,开发人员有一大堆事情要处理。HTTP/2可以被看作是一个微小的部分,需要以这样一种方式进行改变,即整个堆栈不会崩溃。实际上,我可以想象许多团队以这种方式向管理层推销HTTP/2(“这不会是一个问题,我们保证!”)。
但是从技术的Angular 来看,HTTP/2允许更好的开发工作流。例如,HTTP/2的多路复用特性意味着一个站点的大部分内容可以通过一个连接提供,允许一些服务器只通过观察浏览器的行为来执行to learn about interactions between assets。这些信息可以与HTTP/2的其他特性和现代Web一起使用(特别是HTTP/2 PUSH和预打开头)来隐藏大量的延迟。想想看,这可以为对性能感兴趣的开发人员节省多少工作。
x6492ojm2#
问题1:HTTP/2是否会最大限度地减少对CDN的需求?
不可以。CDN主要是根据地理位置将内容放在用户附近。离服务器越近,获得内容的速度就越快。
Q2. HTTP/2是否会消除连接具有类似扩展名(css、javascript)的文件的需要,以及使用强大的Grunt和Gulp工具来实现这一点?
连接只是Grunt/Gulp这样的工具所做的一部分工作。擦除、转换、运行测试等其他工作仍然需要工具来完成。因此,它们将继续存在。就连接而言,理想情况下,您将不再为每个类型创建一个大型连接文件,而是为每个模块创建较小的连接文件。
问题3:另外,为了简化问题并使问题更加简洁,我想问一个非常笼统的问题,您可以预见HTTP/2对Web开发的其他影响是什么?
一般的想法是HTTP/2不会对我们开发东西的方式做出巨大的改变,因为它是一个协议级别的改变。开发人员理想的情况是删除优化(如压缩,分片),这不是HTTP/2的优化技术