Upgrade to Pro — share decks privately, control downloads, hide ads and more …

A Faster Future with HTTP/2

A Faster Future with HTTP/2

A discussion about the performance improvements and potential performance of HTTP/2. Given at GolangSF in San Francisco on April 22nd, 2015.

Blake Gentry

April 22, 2015
Tweet

More Decks by Blake Gentry

Other Decks in Technology

Transcript

  1. A FASTER FUTURE WITH HTTP/2 By / Engineer @ ,

    Heroku alum Blake Gentry @blakegentry Opendoor GoSF, April 2015
  2. GRACEFUL SHUTDOWN Peer can stop accepting new streams, yet finish

    old ones Enabled by the G O A W A Y frame Peer can stop accepting new streams, yet finish old ones Can be sent by either client or server Includes ID of last processed stream
  3. FLOW CONTROL Permission to send more data Credit-based scheme, 65k

    default Per-connection, and per-stream Applies only to DATA frames (message bodies)
  4. HTTP/2 IS ALREADY HERE! >9% usage in Firefox ( )

    source Browser adoption will be extremely rapid.
  5. SERVER PUSH NOT AS SIMPLE AS IT SEEMS When do

    we push? Which resources are needed? Does the client already have it cached? How to combine with resource hints?
  6. SERVER PUSH WHAT ELSE CAN WE PUSH? On 3XX, push

    the new resource Push additional API responses Push API dependencies for front-end apps ?
  7. CDNs or reverse proxies that make these decisions for you

    Packages to figure out which resources should be pushed …or track which have already been pushed Perf. testing to determine optimal priorities …or which other optimizations are worthwhile
  8. REFERENCES , HTTP/2 Draft 17 HPACK Draft 11 HTTP/2 home

    page SPDY Whitepaper HTTP/2 Explained bradfitz/http2