几年前, Mark Nottingham (后来去了 Yaoo!)就 HTTP 的状态以及为了提升 HTTP 所要进行的工作做了一个演讲。从那以后,Web 不断演进,HTTP 被用到了很多当初并未想到的场合中,Mark 也来到了Rackspace。随着 HTML5 的不断演进(以及 WebSockets ),HTTP 需要进一步发展。在最近的一篇博文中,Mark 介绍了对于这个运行在 Web 上的协议未来的路线路。Mark 参加了 HTTPbis 工作组会议,因此能与很多权威人士交流。首先,人们在 HTTP/1.1 上所付出的努力已经得到了回报:
人们所阅读的 [ RFC2616 ] 并未将作者真正思考的内容记录下来。我发现自己回答了很多关于规范的解释性问题,其他人和我都认识到我们需要更加仔细地将这些内容记录下来。现在这项工作已经接近了尾声;条件请求、范围请求、缓存与认证这几部分内容已经处于工作组的最后征询意见中,编辑希望不久之后其他章节也能加进来。
根据 Mark 所述,对这些更新的早期反馈是非常有价值的,开发者也不断重申这么做的好处所在:
缓存实现者告诉我说重新编写的第 6 部分极大地简化了他们的工作,其他几个澄清之处也对浏览器和其他实现有着重要的影响。
随着编辑正在完成最终的重写,将其更新到 HTTP/1.1 规范中也是指日可待的事情。但除了 HTTP/1.1 还有什么呢?正如 Mark 所指出的,工作组起初并未被授权从事新的东西。然而,这个世界在过去几年间发生了翻天覆地的变化,HTTP 必须要演进才行。在 2009 年最初的 SPDY 发布不久之后,Mark 说到:
换句话说,Google 似乎将其当作是最终的 HTTP/2.0 设计的输入。
当 Mike Belshe (SPDY 发明者)向工作组介绍SPDY 时,人们纷纷表现出对其的兴趣。除了最初的部署环境外,还有很多地方都采用了该协议,比如说 Jetty 、 Netty 与 Amazon 。Mark 对围绕着 HTTP 的问题及其对工作组影响的想法早在几年前就已经记录在案了:
几年前在启动 HTTPbis 时,人们对创建一个新协议持很强烈的反对意见,原因有二:一是当下一团糟的界面,二是这么做所导致的部署问题。然而,我最近听到很多人在抱怨与 TCP 相比,HTTP 所带来的诸多限制,希望未来有一天,我们能够尽快地开始解决这个问题。
基于这一点以及人们对 SPDY 的采用,现有的工作组需要做出变革以吸收一些 HTTP/2.0 的工作成果。因此,在上一次会议中,讨论开始围绕着许可权的变革而展开。然而,相对于仅仅采用 SPDY 来说,工作组需要充分考虑需求并确保无论是哪个工作组从事这件事,其目的都是为了整个 Web 的利益。正如 Mark 所总结的,工作组在未来的几年中将会有很多事情要做:
除了 SPDY 外,我们还介绍了其他三个提案;微软的S+M 、对中间实现者之间松耦合的需求介绍以及来自Roy Fielding 的 Waka 。
看起来大多数的参与者都以开放的心态拥抱着 HTTP/2.0,他们并不会强制将现有的解决方案一成不变地转变为标准进程。目前来看,HTTP/2.0 到底是什么样子还没有人能够说的出来。我们能够确定的只是 Web 协议将会有重要的变革,而且很可能在不远的将来就会出现。
活动推荐:
2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。
评论