SlideShare a Scribd company logo
Simone Bordet
sbordet@intalio.com
HTTP/2 & Java
Current Status
Simone Bordet
sbordet@intalio.com
Who Am I
Simone Bordet
 sbordet@intalio.com - @simonebordet
Lead Architect at Intalio/Webtide
 Jetty's HTTP/2, SPDY and HTTP client maintainer
Open Source Contributor
 Jetty, CometD, MX4J, Foxtrot, LiveTribe, JBoss, Larex
CometD project leader
 Web messaging framework
JVM tuning expert
Simone Bordet
sbordet@intalio.com
HTTP/2: Why
Simone Bordet
sbordet@intalio.com
HTTP/2: Why
http://w3c.org ~ 1996
 1 HTML file, 600 bytes
Simone Bordet
sbordet@intalio.com
HTTP/2: Why
http://w3c.org ~ 2015
 41 resources, 366 KiB ~ 1 HTML, 4 CSS, 2 JS, 34 images
Simone Bordet
sbordet@intalio.com
HTTP/2: Why
http://cnn.com ~ 2015
 95 resources, 6.7 MiB ~ 3 HTML, 4 CSS, 30 JS, 58 imgs
Simone Bordet
sbordet@intalio.com
HTTP/2: Why
The Web EXPLODED !
HTTP 1.1 is an old protocol
 Extremely inefficient
 No multiplexing, no resource correlation
Web developers hacking around limitations
 Domain sharding, resource inlining, image spriting, etc.
Browser vendors want to make browsers FAST
 Break HTTP 1.1 recommendations
Simone Bordet
sbordet@intalio.com
HTTP/2: Why
Servers
want to
BE
REALLY
FAST
Simone Bordet
sbordet@intalio.com
HTTP/2: Why
Better HTTP
means
MORE MONEY
Simone Bordet
sbordet@intalio.com
HTTP/2: How
Simone Bordet
sbordet@intalio.com
HTTP/2: How
HTTP/2: Binary protocol
 Based on the SPDY protocol (Google's experiment)
 Efficient to parse and generate
 Based on frames
HEADERS
HEADERS DATA DATA
DATA
Simone Bordet
sbordet@intalio.com
HTTP/2: How
HTTP/2: TLS everywhere
 Usage of TLS (SSL) is a MUST for browsers
 Very strict subset of strong ciphers
Transparent proxy problem
 Caching proxies don't work anymore
 Big problem for certain countries
Server-to-Server communication may be in clear
 Not every server supports clear-text HTTP/2
Simone Bordet
sbordet@intalio.com
HTTP/2: Multiplexed
 No more domain sharding and spriting hacks needed
HEADERS
HEADERS
HEADERS
HEADERS
HEADERS
HEADERS DATA
DATA
Simone Bordet
sbordet@intalio.com
HTTP/2: How
HTTP/2: HTTP Headers compression
 Optimized usage of network
 Using Huffman coding
 ~600B → ~90B => 85% saved on headers
HTTP/2: Request Prioritazion
 Resources may have a priority
 Clients may even re-prioritize
HTTP/2: Push of correlated HTTP resources
 Less roundtrips to get all resources
 Huge benefits in page rendering
Simone Bordet
sbordet@intalio.com
HTTP/2: How
index.html
style.css
application.js
image1.png
Push
Cache
index.html
application.js
style.css
image1.png
HTTP/1.1
HTTP/2 + PUSH
Simone Bordet
sbordet@intalio.com
HTTP/2: When
Simone Bordet
sbordet@intalio.com
HTTP/2: When
HTTP/2 Specification under IESG editing
 It's basically a standard, unlikely to change further
Browsers already implement HTTP/2 (TLS only)
 Firefox 34
 Chrome 38
 Internet Explorer 11
It's already there
 Twitter, Google, major websites
 Our own https://webtide.com
Simone Bordet
sbordet@intalio.com
HTTP/2: Who
Simone Bordet
sbordet@intalio.com
HTTP/2: Who
cURL & Wireshark
 Unix tools support for HTTP/2
35+ Implementations
 https://github.com/http2/http2-spec/wiki/Implementations
Java, C, C++, Go, NodeJS, Erlang, Haskell, etc.
Simone Bordet
sbordet@intalio.com
HTTP/2: Java
Simone Bordet
sbordet@intalio.com
HTTP/2: Java
No changes required to your WARs
Existing web applications work out-of-the-box
Push functionalities provided by servers and
frameworks
Possible action: remove old HTTP/1.1 hacks
Simone Bordet
sbordet@intalio.com
HTTP/2: Java
HTTP/2 compliant servers require JDK 8
 Due to the fact that HTTP/2 requires strong ciphers
 Server-to-Server clear text may run on JDK 7
Servlet 4.0 will support HTTP/2
 Backwards compatible
 Few new API changes
 New HTTP Push API
Simone Bordet
sbordet@intalio.com
HTTP/2: Java
JEP 110 (http://openjdk.java.net/jeps/110)
 HTTP/2 Client proposal for JDK 9
 HTTP/2 Client API proposed:
 http://cr.openjdk.java.net/~michaelm/httpclient/01/
In the Java World:
 Jetty (server + client) – Live @ https://webtide.com
 Netty
 Undertow
 OkHttp (Android)
Simone Bordet
sbordet@intalio.com
HTTP/2: Java
Jetty provides a pure HTTP/2 client
Jetty's HttpClient provides a HTTP/2 transport
 Applications use HttpClient high-level API
// Standard HTTP/1.1 client
new HttpClient();
// HTTP/2 transport client
new HttpClient(new HttpClientTransportOverHTTP2());
Simone Bordet
sbordet@intalio.com
Simone Bordet
sbordet@intalio.com
HTTP/2: Conclusions
Simone Bordet
sbordet@intalio.com
HTTP/2: Conclusions
No changes for Web Developers
 Servlet API backward compatible
 Frameworks (JSF) will be able to leverage HTTP Push
 No more domain sharding / spriting hacks needed
 JDK 9 possibly updated to support HTTP 2.0
Some change for Deployers (devops / sysops)
 TLS everywhere
 Upgrade your Servlet Container
 Jetty 9.3
 Upgrade network infrastructure (e.g. load balancers)
Simone Bordet
sbordet@intalio.com
HTTP/2: Conclusions
HTTP/2 Makes
You Money
Upgrade
To Jetty :)
Simone Bordet
sbordet@intalio.com
Questions
&
Answers

More Related Content

PDF
WebRTC Reborn - Full Stack Toronto
PDF
Frontend Performance: Beginner to Expert to Crazy Person
PDF
JCON 2021 talk - "Wil Git Be Around Forever? A List of Possible Successors"
PDF
WebRTC Reborn - Cloud Expo / WebRTC Summit
PPT
2481 Barrington Rd
PPT
app-eventi-verona
PDF
Presentazione taff projects
PDF
JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...
WebRTC Reborn - Full Stack Toronto
Frontend Performance: Beginner to Expert to Crazy Person
JCON 2021 talk - "Wil Git Be Around Forever? A List of Possible Successors"
WebRTC Reborn - Cloud Expo / WebRTC Summit
2481 Barrington Rd
app-eventi-verona
Presentazione taff projects
JCache is here. Say goodbye to proprietary Caching API's", jDays 2015 Speaker...

Viewers also liked (11)

PPT
Advanced Pay Per Click
PDF
Why add new Procedures to my Medical Practive
PDF
Java overview 20131022
PDF
Front Office Fundamentals for the Aesthetic Practice
PDF
Una nuova dimensione della comunicazione - Bergamo 15/11/2014
PPTX
#2 4 ps of marketing
PDF
The vortex job2.0_digitale e lavoro_04102014
PDF
The vortex job2.0_cambiamento_04102014
PDF
Easy Tools for Expo 2015
PPTX
The Vortex - Presentazione Istituzionale
PPT
Home Staging Seminar Slide Share
Advanced Pay Per Click
Why add new Procedures to my Medical Practive
Java overview 20131022
Front Office Fundamentals for the Aesthetic Practice
Una nuova dimensione della comunicazione - Bergamo 15/11/2014
#2 4 ps of marketing
The vortex job2.0_digitale e lavoro_04102014
The vortex job2.0_cambiamento_04102014
Easy Tools for Expo 2015
The Vortex - Presentazione Istituzionale
Home Staging Seminar Slide Share
Ad

Similar to HTTP 2.0 & Java: Current Status", Part 1, jDays 2015 Speaker: "Simone Bordet (20)

ODP
HTTP/2 and Java: Current Status
PDF
HTTP 2.0 Why, How and When
PDF
HTTP, WebSocket, SPDY: evoluzione dei protocolli web by Simone Bordet
PDF
Jetty 9 – The Next Generation Servlet Container
PPTX
HTTP 2.0 - Web Unleashed 2015
PDF
Maker of Things - the open IoT cloud for makers chapter.
PDF
Git and GitHub for Testers
PDF
Http2 right now
PDF
HTTP colon slash slash: end of the road? @ CakeFest 2013 in San Francisco
PPT
gofortution
PDF
Http 2: Should I care?
PPT
Thadomal IEEE-HTML5-Workshop
PDF
SRT Prometheus Exporter Introduction.pdf
KEY
Ultra-modern Front-end Dev & Introducing Spar
PDF
WebRTC Reborn Over The Air
PDF
WebRTC Reborn - Full Stack
PPTX
HTTPS and HTTP/2
PDF
CSU33012-I-microservices.pdf
PDF
Http/2 - What's it all about?
PDF
Cloud-Ready Web Messaging With CometD by S. Bordet
HTTP/2 and Java: Current Status
HTTP 2.0 Why, How and When
HTTP, WebSocket, SPDY: evoluzione dei protocolli web by Simone Bordet
Jetty 9 – The Next Generation Servlet Container
HTTP 2.0 - Web Unleashed 2015
Maker of Things - the open IoT cloud for makers chapter.
Git and GitHub for Testers
Http2 right now
HTTP colon slash slash: end of the road? @ CakeFest 2013 in San Francisco
gofortution
Http 2: Should I care?
Thadomal IEEE-HTML5-Workshop
SRT Prometheus Exporter Introduction.pdf
Ultra-modern Front-end Dev & Introducing Spar
WebRTC Reborn Over The Air
WebRTC Reborn - Full Stack
HTTPS and HTTP/2
CSU33012-I-microservices.pdf
Http/2 - What's it all about?
Cloud-Ready Web Messaging With CometD by S. Bordet
Ad

Recently uploaded (20)

PPTX
L1 - Introduction to python Backend.pptx
PPTX
history of c programming in notes for students .pptx
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
System and Network Administraation Chapter 3
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
Introduction to Artificial Intelligence
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
Essential Infomation Tech presentation.pptx
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
L1 - Introduction to python Backend.pptx
history of c programming in notes for students .pptx
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
2025 Textile ERP Trends: SAP, Odoo & Oracle
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Wondershare Filmora 15 Crack With Activation Key [2025
Reimagine Home Health with the Power of Agentic AI​
System and Network Administraation Chapter 3
Design an Analysis of Algorithms II-SECS-1021-03
Introduction to Artificial Intelligence
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Operating system designcfffgfgggggggvggggggggg
Upgrade and Innovation Strategies for SAP ERP Customers
Essential Infomation Tech presentation.pptx
How to Choose the Right IT Partner for Your Business in Malaysia
VVF-Customer-Presentation2025-Ver1.9.pptx

HTTP 2.0 & Java: Current Status", Part 1, jDays 2015 Speaker: "Simone Bordet