转 HTTP/2: The Long-Awaited Sequel

HTTP/2: The Long-Awaited Sequel

Thursday, October 9, 2014 2:01 AM

Ready to speed things up?

Here at Microsoft, we’re rolling out support in Internet Explorer for the first significant rework of the Hypertext Transfer Protocol since 1999. It’s been a while, so it’s due.

While there have been lot of efforts to streamline Web architecture over the years, none have been on the scale of HTTP/2. We’ve been working hard to help develop this new, efficient and compatible standard as part of the IETF HTTPbis Working Group. It’s called, for obvious reasons, HTTP/2 – and it’s available now, built into the new Internet Explorer starting with the Windows 10 Technical Preview.

You can see an overview of the work we have been doing with the HTTPbis working group by checking out the Microsoft Open Technologies HTTP/2 page.

Why is Internet Explorer leading with HTTP/2 implementation?

Performance matters in an increasingly real-time and mobile world – even gains that may seem merely incremental make a difference. For instance a Bing study found that a 10ms increase in page load time costs the site $250K in revenue annually; a 100ms increase – that’s a third the speed of the blink of the human eye, mind you – undid three months of work that went into improving user engagement via better search results relevance. That 100ms delay in the responsiveness of a transactional web page has been shown to cost big online retailers up to 1% of sales due to search abandonment. So what this working group is doing has real economic impact.

What is wrong with what we had yesterday?

For the most part, the way a Web page gets loaded today happens pretty much the same way it did in the days of 800x600-pixel displays. Certainly the web is a faster place today, but it could be much faster and much more resource efficient.

Building a page today still requires a lot of individual queries between the browser and the server, and each individual call has to wait until the server responds before sending the next. Sure, you can open more independent, parallel connections, but this still limits how many items can be requested simultaneously. It also dictates the order of the responses and prevents the server from optimizing responses.

So how is HTTP/2 different?

HTTP/2 delivers the Web page elements quicker and more efficiently, taking advantage of all the available bandwidth. With long-lived connections and multiplexing (the protocol’s ability to combine multiple requests on one connection), more web page items arrive sooner. Experimental HTTP/2 features such as server push and request dependencies could further improve web performance in the future.

What does this mean for developers?

HTTP/2 was designed from the beginning to be backwards-compatible with HTTP/1.1. That means developers of HTTP libraries don‘t have to change APIs, and the developers who use those libraries won‘t have to change their application code. This is a huge advantage: developers can move forward without spending months bringing previous efforts up to date.

What about networks? And security?

Fewer and less frequent connections also means that HTTP/2 will put less pressure on the network – and when you consider the scale of the web today, that could significantly increase the efficiency of networks, particularly mobile ones. Given HTTP/2’s efficient connection model, the performance impact of adding TLS to a site will be lessened, opening up the opportunity for more administrators to add TLS to their sites.

When can I get it?

HTTP/2 support is in IE on the Windows 10 Technical Preview. The work on HTTP/2 for IE really began in Windows and Windows Phone 8.1 when we added the experimental SPDY 3.0 protocol. This gave us a chance to gain some experience with a multiplexing HTTP protocol and helped move us towards HTTP/2 and what will now be an industry standard.

SPDY was a good starting point for the HTTP/2 standard, but it is an experimental protocol that does not lend itself to long-term adoption. With the development of HTTP/2, we will remove support for SPDY in all future versions of IE. Web sites and applications currently using SPDY should be able to migrate to HTTP/2 with little or no changes.

How should developers and site owners prepare for the change?

The Technical Preview has HTTP/2 server support also. This means you can create sites in IIS and test your content end to end. Note: in the Technical Preview versions of both IE and IIS, non-secure connections (i.e. HTTP) are not supported on HTTP/2; only secure connections (i.e. HTTPS) are supported on HTTP/2.

Check out our HTTP/2 implementation and put it through its paces! Let us know if you have feedback via @IEDevChat or Connect.

— Rob Trace, Senior Program Manager

— David Walp, Senior Program Manager

时间: 2024-10-26 00:30:06

转 HTTP/2: The Long-Awaited Sequel的相关文章

UVA 10746 Crime Wave – The Sequel(费用流)

http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1687 ProblemG CrimeWave – The Sequel Input: StandardInput Output: StandardOutput TimeLimit: 2 Seconds n bankshave been robbed this fine day. m (grea

mysql mac客户端: sequel,mysql-workbench

sequel: https://sequelpro.com/download#auto-start mysql-workbench:https://dev.mysql.com/downloads/file/?id=468289

sequel pro无法连接mysql服务器

我在Mac上使用的MySQL客户端是Sequel Pro,第一次用出现无法连接MySQL服务器的错误. 我的MySQL是通过lnmp一键安装包安装的,通过lnmp论坛找到了解决方案: 1. 添加用户 CREATE USER 'root'@'%' IDENTIFIED BY 'your_passwd'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 2. iptables里删除DROP 3306端口的规则 iptables

工具Sequel Pro简介

从图中可以看到,sequel工作界面主要分成三部分,左边侧边显示的是当前所连接的数据库中存在的数据表,右侧上半部分则是用于写sql的地方,在Mac环境下按command+R键会执行你所写的sql,右侧下半部分则是用于显示sql所执行的结果的. 因为这个工具刚接触,主要是用来查看数据居多,所以其它功能尚未发掘,对于该工具的详细情况可以参考Sequel Pro官网.

解决Mac下Sequel Pro 1.1 连接 Homebrew安装Mysql5.7.8的问题 Sequel Pro 1.1 encountered an unexpected error

解决Mac下Sequel Pro 1.1 连接 Homebrew安装Mysql5.7.8的问题 Sequel Pro encountered an unexpected error Sequel Pro 1.1 encountered an unexpected error when connecting to mysql 5.7.8 rc via ssh 在OS X El Capitan环境下用 + homebrew安装 + MySQL 5.7.9: 解决办法,运行下面得命令升级mysql,重

使用sequel来比较对象

比较对象 您可以使用 isEqual: 方法比较两个对象.让接收消息的对象与传入的对象进行比较:如果相同,该方法返回 YES.例如: BOOL objectsAreEqual = [obj1 isEqual:obj2]; if (objectsAreEqual) { // do something... } 请注意,对象相等与对象相同是有分别的.对于后者,请使用相同运算符 == 测试两个变量是否指向同一个实例. 当您比较同一个类的两个对象时,到底在比较什么?这取决于类.根类 NSObject 将

uva 10746 Crime Wave - The Sequel(最小费用流)

题目: 链接:点击打开链接 题意: 一天n个银行被抢了,m个值班的警车在不同的位置,n个这样的警车应该被派往每个银行,以便平均到达n个银行的时间最少. 思路: 尽管题目很裸,还是不会做,看来还是差很多啊,. 单源,源点s=0,汇点t=n+m+1.警车编号1到m.银行编号m+1到n+m+1. 代码: #include <iostream> #include <cstdio> #include <cstring> #include <queue> using n

UVA 10746 Crime Wave - The Sequel【最小费用最大流】

题目链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1687 题意:给你n个城市到m个海港的距离,求每个城市都有船只去的最短平均航行距离. 源点向城市建边 城市向海港 海港向汇点建边 容量为1,最后城市向海港的费用为距离 代码: #include<stdio.h> #include<iostream> #in

[BSidesCF 2019]Sequel SQLite注入

新知识点 :拿到任意账号后 得到cookie ,再篡改cookie进行注入 原创 HyyMbb 最后发布于2020-02-15 20:51:45 阅读数 16 收藏展开题目描述 首先是登录,我们爆破一下就好了~~然后得到用户名和密码均为guest~~这时登录成功后会返回一个cookie,而且长得很可疑~~ set-cookie: 1337_AUTH=eyJ1c2VybmFtZSI6Imd1ZXN0IiwicGFzc3dvcmQiOiJndWVzdCJ9; HttpOnly 1 base64 解密