HTTP/2: A sequência muito esperada
Pronto para agilizar as coisas?
Aqui na Microsoft, estamos implementando o suporte no Internet Explorer no primeiro retrabalho significativo do Protocolo de Transferência de Hipertexto desde 1999. Faz um bom tempo, então já era chegada a hora.
Embora tenha havido muitos esforços para simplificar a arquitetura da Web ao longo dos anos, nenhum chegou ao nível do HTTP/2. Estamos trabalhando duro para ajudar a desenvolver esse padrão novo, eficiente e compatível como parte do Grupo de Trabalho IETF HTTPbis. Ele é chamado, por razões óbvias, de HTTP/2 e está disponível agora, embutido no novo Internet Explorer, começando no Windows 10 Technical Preview.
Você pode ver uma visão geral do trabalho que temos feito com o grupo de trabalho HTTPbis, visitando a página Microsoft Open Technologies HTTP/2.
Por que o Internet Explorer está liderando a implementação do HTTP/2?
O desempenho é importante em um mundo cada vez mais móvel e em tempo real. Mesmo ganhos que parecem meramente incrementais, fazem diferença. Por exemplo, um estudo do Bing descobriu que um aumento de 10 ms no tempo de carregamento da página custa ao site US$ 250.000 em receita anualmente. Isso representa um aumento de 100 ms, o equivalente a um terço da velocidade da piscada do olho humano, que substituiu três meses do trabalho empregado para aprimorar o compromisso do usuário através de uma melhor relevância dos resultados de pesquisa. Esse atraso de 100 ms no tempo de resposta de uma página da Web funcional demonstrou custar para grandes varejistas online até 1% das vendas devido ao abandono da pesquisa. Portanto, o que esse grupo de trabalho está fazendo tem um impacto econômico real.
O que há de errado com o que existia antigamente?
Em boa parte, a forma em que uma página da Web é carregada hoje em dia acontece basicamente da mesma forma que acontecia nos dias das telas de 800 x 600 pixels. Certamente, a Web é muito mais rápida hoje em dia, mas ela poderia ser um recurso muito mais rápido e muito mais eficiente.
Criar uma página hoje em dia ainda requer muitas consultas individuais entre o navegador e o servidor, e cada chamada individual precisa aguardar que o servidor responda antes de enviar a próxima. Com certeza, você pode abrir conexões paralelas e mais independentes, mas isso continua a limitar o número de vezes em que os itens podem ser solicitados simultaneamente. Isso também determina a ordem das respostas e impede que o servidor otimize as respostas.
Sendo assim, qual é a diferença do HTTP/2?
O HTTP/2 entrega os elementos de página da Web de forma mais rápida e eficiente, tirando vantagem de toda a largura de banda disponível. Com conexões de longa duração e multiplexação (a habilidade do protocolo de combinar várias solicitações em uma conexão), mais itens de página da Web chegam mais cedo. Recursos HTTP/2 experimentais, tais como o envio por push do servidor e as dependências de solicitação poderiam aprimorar ainda mais o desempenho da Web no futuro.
O que isso significa para desenvolvedores?
O HTTP/2 foi projetado desde o início para ter compatibilidade com a versão HTTP/1.1. Isso significa que os desenvolvedores de bibliotecas HTTP não precisam alterar as APIs e os desenvolvedores que usam essas bibliotecas não terão que alterar o código do aplicativo. Esta é uma grande vantagem: os desenvolvedores podem seguir adiante sem gastar meses tentando atualizar o trabalho existente.
E as redes? E a segurança?
Menor número de conexões e com menos frequência também significa que o HTTP/2 colocará menos pressão na rede – e quando você pensa na dimensão da Web atual, isso poderia aumentar significativamente a eficiência das redes, particularmente as móveis. Dado o modelo de conexão eficiente do HTTP/2, o impacto no desempenho da adição do TLS a um site será menor, abrindo a oportunidade para mais administradores adicionarem TLS aos seus sites.
Quando posso obtê-lo?
O suporte a HTTP/2 está no IE no Windows 10 Technical Preview. O trabalho no HTTP/2 para o IE começou realmente no Windows e no Windows Phone 8.1 quando adicionamos o protocolo SPDY 3.0 experimental. Isso nos dá uma chance para ganhar alguma experiência com um protocolo HTTP de multiplexação e nos ajudou a progredir com o HTTP/2 e o que agora será um padrão do setor.
O SPDY foi um bom ponto de partida para o padrão HTTP/2, mas ele é um protocolo experimental que não se presta a uma adoção de longo prazo. Com o desenvolvimento do HTTP/2, removeremos o suporte para SPDY em todas as versões futuras do IE. Os sites e os aplicativos que no momento usam SPDY devem estar aptos a migrar para o HTTP/2 com pouca ou nenhuma alteração.
Como os desenvolvedores e os proprietários de site devem se preparar para a mudança?
- Execute a versão Windows 10 Technical Preview do IE
- Inicie as ferramentas de desenvolvedor e ative o rastreamento de rede
- Carregue sites que dão suporte a HTTP/2 rascunho-14. Alguns ótimos sites estão listados nas páginas por implementador em: https://github.com/http2/http2-spec/wiki/Implementations
- Assista ao fluxo de pacotes HTTP/2
O Technical Preview também tem suporte ao servidor HTTP/2. Isso significa que você pode criar sites no IIS e testar o conteúdo de ponta a ponta. Observação: na versão Technical Preview do IE e do IIS, conexões não seguras (ou seja, HTTP) não têm suporte no HTTP/2; apenas conexões seguras (ou seja, HTTPS) têm suporte no HTTP/2.
Verifique nossa implementação do HTTP/2 e analise os detalhes! Mande-nos os seus comentários via @IEDevChat ou Connect.
— Rob Trace, gerente sênior de programas
— David Walp, gerente sênior de programas