SlideShare a Scribd company logo
1 of 77
HTTP/2 is here!
And why the web needs it
Nilesh Naik
Tata Consultancy Services
• How we got there
• Limitations of HTTP/1.1
• What’s new in HTTP/2
• Best practices of today are anti-patterns in
HTTP/2
• Impact on developer community
• Current implementations
• What’s next
What’s in here -
The web has changed significantly since then
1991
HTTP/0.9
1996
HTTP/1.0
1999
HTTP/1.1
2015
HTTP/2
HTTP Timeline
2009
SPDY
HTTP 0.9 (1991)
GET /index.htm
<html>
<head>
….
</head>
<body>
…
</body>
</html>
HTTP 1.0 (1996)
GET /index.htm HTTP/1.0
User-Agent: mozilla
Accept: text/html
HTTP/1.0 200 OK
<html>
<head>
….
</head>
<body>
…
</body>
</html>
HTTP 1.1 (1999)
GET /index.htm HTTP/1.0
User-Agent: mozilla
Accept: text/html
Connection: keep-alive
HTTP/1.0 200 OK
<html>
<head>
….
</head>
<body>
…
</body>
</html>
First Web Page
Early 90’s – McDonald’s
Single Request – Response model
Not much interaction
MSN
Early 90’s
 Most of the content was sent in response to single
request
 Minimal or no JS
Modern Web page - Amazon
- 308 requests, 8.1 MB data
Modern Web page
 External resources requested
 Multiple requests, Multiple response
Modern Web page - Ads
Much of the site isnt about content, its about Ads.
HTTP abused!
And yes, every TCP connection is closed with a 3-way
connection too!
Open connection: 3-way handshake
SYN
x= rand()
SYN ACK
X+1 y= rand()
ACK
x+1 y+1
Application
Data
0 ms
28 ms
56 ms
84 ms
 More resource intensive than ever before
 HTTP 1.1 was not built to handle that kind of load
 HTTP 1.1 does not use TCP optimally
800K
Transfer size
2300K
Transfer size
80 Objects
100 Objects
In the last 4 years..
HTTP requests are expensive!
Workarounds
SpritingSpriting
Spriting
Text
To get just one flag…
Browser must download
and encode the whole
image
Spriting
Spriting - Contd.
 Makes development harder
 Impacts caching
 Every change would require a fresh download
 Larger files takes longer to download and display on browser
Inlining Resources
Inlining – Contd.
 data: urls instead of sprites
 Resources can’t be cached independently
 Development isn't easy
Concatenation
Merge multiple JavaScript/CSS files into one BIG file
Larger files to download
and parse
Larger files to download
and parse
Whole bundle is invalidated
if a single file changes
Concatenation – contd.
 Too much data when only a little is needed
 Too much to reload when a change is needed
 Annoyance for developers
 Impacts caching
Domain sharding
Browsers use 6-8 connections per host
Domain sharding – contd.
Sites use many host names to allow more connection
Domain sharding on Single Server
domain.com/index.html
images.domain.com/image.png
styles.domain.com/styles.css
Domain sharding – bbc.co.uk
www.bbc.co.uk
static.bbc.co.uk
nav.files.bbci.co.uk
homepage.files.bbci.co.uk
 Still suffers from head of blocking
 Every new connection takes up resources
 Every new host needs a name lookup
*http://yslow.org/
 Useful, but are really just Band-aids
 Annoying for the developers
 Adds a layer of tools
 Hampers caching
 Downloads too much
Hacks
Ideal Protocol Interaction
 Send minimal data to the server
 Download minimal data needed
 Extra data -> more time to transfer, adds latency (especially on mobile networks)
HTTP/1.1
 HTTP/1.x is “chatty”
 Several round-trips, adds latency
Latency vs Bandwidth
Announced in 2009
Target 50% reduction in PLT
Initial tests - 55% faster
On track to de facto standard
Enter HTTP/2 - RFC 7540
 Built on top of
SPDY
 One TCP
Connection
 Improved end-user
perceived latency
 Binary framing
layer
Enter HTTP/2
Connection
Stream
DATA HEADER
Request message
Response message
HEADER HEADERDATA
Stream
PRIORITY HEADER
Request message
Response message
HEADER DATA
…
An HTTP 1.x connection
Response
<HTML>
<HEAD>
--
</HEAD>
<BODY>
--
</BODY>
</HEAD>
Request
GET /index.html HTTP 1.1
User-Agent: mozilla
Accept: text/html
TCP Connection
An HTTP/2 connection
Response
0000100011
0110000100
0000100101
Request
000100010
100100100
001001000
TCP Connection
Demo
• https://http2.akamai.com/demo
Multiplexing
Head of
Line
Blocking
No Queuing
One connection
Many requests
Out of order
interleaved
HTTP/1.1 HTTP/2
Still serialized
Long download/long
think time can block
other requests
Multiplexing – contd.
Multiplexing – network graph
Header Compression
 Unnecessary metadata (headers) add up
quickly
 100+ requests, with few KB of headers ->
hundreds of KB’s!
 Bytes are slow and expensive to transfer
Header Duplication
Header Duplication – contd.
Header Duplication – contd.
Header Duplication – contd.
Header Duplication – contd.
 Four requests
 2,596 bytes total
 1,797 redundant bytes
HPACK – Header Compression - RFC 7541
Compresses Headers
Avoids sending duplicated/repeated headers
Server push
 Similar to Inlining
 Resources pushed directly to client’s cache
 Opportunity for servers to become smarter
– Don’t push on every request
– Push based upon observed traffic pattern
Browser can
reject push
Implementations
 H2O
 mod_h2 (Apache)
Server push – Cache Digest
Process
request
Digest of
/main.js &
/main.css
<html>
<script src="/main.js">
<link rel="stylesheet" href="/main.css">
<link rel=STYLESHEET href="/foo.css">
<body>
… generated response …
Priortization – HTTP/1.x
Priortization – HTTP/1.x
In HTTP/1, Prioritization is a browser heuristic
• CSS and images first, followed by images
Priortization – HTTP/2
Priortization – HTTP/2
In HTTP/2, it’s hinted by the client, determined by the
server
Stream Priority
Stream Weight: <int> 1..256
• Lower the number, higher the priority
Stream Dependency
Stream
Root
Weight: 15
Dependency: {Stream id}
• Streams aren't isolated, they can be dependent on others
• If no dependency then id set to zero.
Dependency Tree
5
5
7
4
HTTP/2 User Impact
Faster page loads
More response loading
More HTTPS
Impact on developers
Does not modify the semantics
Uses binary format instead of text
Debugging can be a problem
No more telnet
Why?
TLS Overhead
• World is moving towards https
already
• ALPN makes impact minimal
• Cost of certificates and
administrative overhead
Browser support
Hosting .NET Apps
IIS 10 on Windows 10
Windows Server 2016
Nginx
Hosting Java Apps
Apache HTTP 2.4.17+
Jetty 9.3+
Tomcat 8.5
Hosting Node Apps
node-http2
node-spdy
ExpressJS 5.0
HTTP/2 on JVM
JDK 8 and upwards required
Include ALPN extensions in class path
Included in JDK 9
Implementations
https://github.com/http2/http2-spec/wiki/Implementations
HTTP/1.x workaround will hurt HTTP/2 perf
Inlining
Spriting
Concatenating
Sharding
Case study
What's next?
QUIC
Runs on top of UDP
Goodness of SPDY and HTTP/2
No head of line blocking in QUIC!
QUIC TCP + TLS
New connection 100 ms
Repeat connnection 0 ms RTT
New connection 300 ms
Repeat connection 200 ms RTT
Thank you!
@NileshRaviNaik

More Related Content

What's hot

Apache Server Tutorial
Apache Server TutorialApache Server Tutorial
Apache Server TutorialJagat Kothari
 
The app server, web server and everything in between
The app server, web server and everything in betweenThe app server, web server and everything in between
The app server, web server and everything in betweenColdFusionConference
 
Scale ColdFusion with Terracotta Distributed Caching for Ehchache
Scale ColdFusion with Terracotta Distributed Caching for EhchacheScale ColdFusion with Terracotta Distributed Caching for Ehchache
Scale ColdFusion with Terracotta Distributed Caching for EhchacheColdFusionConference
 
Apache web server
Apache web serverApache web server
Apache web serverSabiha M
 
New lessons in connection management
New lessons in connection managementNew lessons in connection management
New lessons in connection managementToon Koppelaars
 
Apache Web Server Architecture Chaitanya Kulkarni
Apache Web Server Architecture Chaitanya KulkarniApache Web Server Architecture Chaitanya Kulkarni
Apache Web Server Architecture Chaitanya Kulkarniwebhostingguy
 
Apache Camel: Jetty Component With Example
Apache Camel: Jetty Component With ExampleApache Camel: Jetty Component With Example
Apache Camel: Jetty Component With ExampleAmit Aggarwal
 
WordCamp LA 2011 - WordPress Server Migration
WordCamp LA 2011 - WordPress Server MigrationWordCamp LA 2011 - WordPress Server Migration
WordCamp LA 2011 - WordPress Server MigrationBrad Markle
 
What's New in Notes, Sametime and Verse On-Premises
What's New in Notes, Sametime and Verse On-PremisesWhat's New in Notes, Sametime and Verse On-Premises
What's New in Notes, Sametime and Verse On-PremisesGabriella Davis
 
The Gurubox Project: Open Source Troubleshooting Tools
The Gurubox Project: Open Source Troubleshooting ToolsThe Gurubox Project: Open Source Troubleshooting Tools
The Gurubox Project: Open Source Troubleshooting ToolsWes Morgan
 

What's hot (18)

Apache Server Tutorial
Apache Server TutorialApache Server Tutorial
Apache Server Tutorial
 
The app server, web server and everything in between
The app server, web server and everything in betweenThe app server, web server and everything in between
The app server, web server and everything in between
 
HTTP2 is Here!
HTTP2 is Here!HTTP2 is Here!
HTTP2 is Here!
 
Scale ColdFusion with Terracotta Distributed Caching for Ehchache
Scale ColdFusion with Terracotta Distributed Caching for EhchacheScale ColdFusion with Terracotta Distributed Caching for Ehchache
Scale ColdFusion with Terracotta Distributed Caching for Ehchache
 
Apache HTTP Server
Apache HTTP ServerApache HTTP Server
Apache HTTP Server
 
Apache Web Server Setup 2
Apache Web Server Setup 2Apache Web Server Setup 2
Apache Web Server Setup 2
 
Apache web server
Apache web serverApache web server
Apache web server
 
Http/2
Http/2Http/2
Http/2
 
New lessons in connection management
New lessons in connection managementNew lessons in connection management
New lessons in connection management
 
Apache Web Server Setup 1
Apache Web Server Setup 1Apache Web Server Setup 1
Apache Web Server Setup 1
 
2014 cf summit_clustering
2014 cf summit_clustering2014 cf summit_clustering
2014 cf summit_clustering
 
Apache Web Server Architecture Chaitanya Kulkarni
Apache Web Server Architecture Chaitanya KulkarniApache Web Server Architecture Chaitanya Kulkarni
Apache Web Server Architecture Chaitanya Kulkarni
 
Apache error
Apache errorApache error
Apache error
 
Apache Camel: Jetty Component With Example
Apache Camel: Jetty Component With ExampleApache Camel: Jetty Component With Example
Apache Camel: Jetty Component With Example
 
WordCamp LA 2011 - WordPress Server Migration
WordCamp LA 2011 - WordPress Server MigrationWordCamp LA 2011 - WordPress Server Migration
WordCamp LA 2011 - WordPress Server Migration
 
Apache web service
Apache web serviceApache web service
Apache web service
 
What's New in Notes, Sametime and Verse On-Premises
What's New in Notes, Sametime and Verse On-PremisesWhat's New in Notes, Sametime and Verse On-Premises
What's New in Notes, Sametime and Verse On-Premises
 
The Gurubox Project: Open Source Troubleshooting Tools
The Gurubox Project: Open Source Troubleshooting ToolsThe Gurubox Project: Open Source Troubleshooting Tools
The Gurubox Project: Open Source Troubleshooting Tools
 

Viewers also liked

Creating Multiscreen Apps using Adobe Flash Platform
Creating Multiscreen Apps using Adobe Flash PlatformCreating Multiscreen Apps using Adobe Flash Platform
Creating Multiscreen Apps using Adobe Flash PlatformHemanth Sharma
 
Adobe Flash Platform for Mobile Development
Adobe Flash Platform for Mobile DevelopmentAdobe Flash Platform for Mobile Development
Adobe Flash Platform for Mobile DevelopmentIndicThreads
 
Using flash for_mobile_game_development(3)
Using flash for_mobile_game_development(3)Using flash for_mobile_game_development(3)
Using flash for_mobile_game_development(3)Joseph Burchett
 
Ads Overview En
Ads Overview EnAds Overview En
Ads Overview Enraj240969
 
Game design & development
Game design & developmentGame design & development
Game design & developmentHemanth Sharma
 
Multiplatform Game Design & Development
Multiplatform Game Design & DevelopmentMultiplatform Game Design & Development
Multiplatform Game Design & DevelopmentHemanth Sharma
 
India Game Developer Summit 2010 Slides
India Game Developer Summit 2010 SlidesIndia Game Developer Summit 2010 Slides
India Game Developer Summit 2010 SlidesHemanth Sharma
 
Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development
Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development
Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development Jessica Tams
 
Mobile Game Development using Adobe Flash
Mobile Game Development using Adobe FlashMobile Game Development using Adobe Flash
Mobile Game Development using Adobe Flashchall3ng3r
 
Game Design with Adobe® Flash® Professional CS6
Game Design with Adobe® Flash® Professional CS6Game Design with Adobe® Flash® Professional CS6
Game Design with Adobe® Flash® Professional CS6Joseph Labrecque
 
Microsoft Offical Course 20410C_13
Microsoft Offical Course 20410C_13Microsoft Offical Course 20410C_13
Microsoft Offical Course 20410C_13gameaxt
 
Microsoft Offical Course 20410C_02
Microsoft Offical Course 20410C_02Microsoft Offical Course 20410C_02
Microsoft Offical Course 20410C_02gameaxt
 

Viewers also liked (17)

Creating Multiscreen Apps using Adobe Flash Platform
Creating Multiscreen Apps using Adobe Flash PlatformCreating Multiscreen Apps using Adobe Flash Platform
Creating Multiscreen Apps using Adobe Flash Platform
 
Adobe Flash Platform for Mobile Development
Adobe Flash Platform for Mobile DevelopmentAdobe Flash Platform for Mobile Development
Adobe Flash Platform for Mobile Development
 
Using flash for_mobile_game_development(3)
Using flash for_mobile_game_development(3)Using flash for_mobile_game_development(3)
Using flash for_mobile_game_development(3)
 
Ads Overview En
Ads Overview EnAds Overview En
Ads Overview En
 
Mobile apps development using flash builder 4.5
Mobile apps development using flash builder 4.5Mobile apps development using flash builder 4.5
Mobile apps development using flash builder 4.5
 
Game design & development
Game design & developmentGame design & development
Game design & development
 
Multiplatform Game Design & Development
Multiplatform Game Design & DevelopmentMultiplatform Game Design & Development
Multiplatform Game Design & Development
 
India Game Developer Summit 2010 Slides
India Game Developer Summit 2010 SlidesIndia Game Developer Summit 2010 Slides
India Game Developer Summit 2010 Slides
 
Adobe: Changing the game
Adobe: Changing the gameAdobe: Changing the game
Adobe: Changing the game
 
Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development
Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development
Goodbye Flash, Hello OpenFL: Next Generation Cross-Platform Game Development
 
Mobile Game Development using Adobe Flash
Mobile Game Development using Adobe FlashMobile Game Development using Adobe Flash
Mobile Game Development using Adobe Flash
 
Game Design with Adobe® Flash® Professional CS6
Game Design with Adobe® Flash® Professional CS6Game Design with Adobe® Flash® Professional CS6
Game Design with Adobe® Flash® Professional CS6
 
Microsoft Offical Course 20410C_13
Microsoft Offical Course 20410C_13Microsoft Offical Course 20410C_13
Microsoft Offical Course 20410C_13
 
Microsoft Offical Course 20410C_02
Microsoft Offical Course 20410C_02Microsoft Offical Course 20410C_02
Microsoft Offical Course 20410C_02
 
Mcts chapter 4
Mcts chapter 4Mcts chapter 4
Mcts chapter 4
 
70 640 Lesson07 Ppt 041009
70 640 Lesson07 Ppt 04100970 640 Lesson07 Ppt 041009
70 640 Lesson07 Ppt 041009
 
70 640 Lesson04 Ppt 041009
70 640 Lesson04 Ppt 04100970 640 Lesson04 Ppt 041009
70 640 Lesson04 Ppt 041009
 

Similar to HTTP/2 is here! Why the web needs it and its impact

HTTP colon slash slash: the end of the road?
HTTP colon slash slash: the end of the road?HTTP colon slash slash: the end of the road?
HTTP colon slash slash: the end of the road?Alessandro Nadalin
 
Introducing HTTP/2
Introducing HTTP/2Introducing HTTP/2
Introducing HTTP/2Ido Flatow
 
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...Holger Bartel
 
In a HTTP/2 World - DeccanRubyConf 2017
In a HTTP/2 World - DeccanRubyConf 2017In a HTTP/2 World - DeccanRubyConf 2017
In a HTTP/2 World - DeccanRubyConf 2017Douglas Vaz
 
The Case for HTTP/2 - EpicFEL Sept 2015
The Case for HTTP/2 - EpicFEL Sept 2015The Case for HTTP/2 - EpicFEL Sept 2015
The Case for HTTP/2 - EpicFEL Sept 2015Andy Davies
 
21 Www Web Services
21 Www Web Services21 Www Web Services
21 Www Web Servicesroyans
 
HTTP/2 Introduction
HTTP/2 IntroductionHTTP/2 Introduction
HTTP/2 IntroductionWalter Liu
 
Presentation (PowerPoint File)
Presentation (PowerPoint File)Presentation (PowerPoint File)
Presentation (PowerPoint File)webhostingguy
 
Presentation (PowerPoint File)
Presentation (PowerPoint File)Presentation (PowerPoint File)
Presentation (PowerPoint File)webhostingguy
 
Next generation web protocols
Next generation web protocolsNext generation web protocols
Next generation web protocolsDaniel Austin
 
Introduction to HTTP/2
Introduction to HTTP/2Introduction to HTTP/2
Introduction to HTTP/2Ido Flatow
 
Frontend performance
Frontend performanceFrontend performance
Frontend performancesacred 8
 
HTML5, HTTP2, and You 1.1
HTML5, HTTP2, and You 1.1HTML5, HTTP2, and You 1.1
HTML5, HTTP2, and You 1.1Daniel Austin
 

Similar to HTTP/2 is here! Why the web needs it and its impact (20)

Http2
Http2Http2
Http2
 
HTTP colon slash slash: the end of the road?
HTTP colon slash slash: the end of the road?HTTP colon slash slash: the end of the road?
HTTP colon slash slash: the end of the road?
 
Introducing HTTP/2
Introducing HTTP/2Introducing HTTP/2
Introducing HTTP/2
 
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
 
Http 2
Http 2Http 2
Http 2
 
In a HTTP/2 World - DeccanRubyConf 2017
In a HTTP/2 World - DeccanRubyConf 2017In a HTTP/2 World - DeccanRubyConf 2017
In a HTTP/2 World - DeccanRubyConf 2017
 
5-WebServers.ppt
5-WebServers.ppt5-WebServers.ppt
5-WebServers.ppt
 
Web server
Web serverWeb server
Web server
 
The Case for HTTP/2 - EpicFEL Sept 2015
The Case for HTTP/2 - EpicFEL Sept 2015The Case for HTTP/2 - EpicFEL Sept 2015
The Case for HTTP/2 - EpicFEL Sept 2015
 
21 Www Web Services
21 Www Web Services21 Www Web Services
21 Www Web Services
 
HTTP/2 Introduction
HTTP/2 IntroductionHTTP/2 Introduction
HTTP/2 Introduction
 
Presentation (PowerPoint File)
Presentation (PowerPoint File)Presentation (PowerPoint File)
Presentation (PowerPoint File)
 
Presentation (PowerPoint File)
Presentation (PowerPoint File)Presentation (PowerPoint File)
Presentation (PowerPoint File)
 
Next generation web protocols
Next generation web protocolsNext generation web protocols
Next generation web protocols
 
Http/2
Http/2Http/2
Http/2
 
HTTP Presentation
HTTP Presentation HTTP Presentation
HTTP Presentation
 
HTTP
HTTPHTTP
HTTP
 
Introduction to HTTP/2
Introduction to HTTP/2Introduction to HTTP/2
Introduction to HTTP/2
 
Frontend performance
Frontend performanceFrontend performance
Frontend performance
 
HTML5, HTTP2, and You 1.1
HTML5, HTTP2, and You 1.1HTML5, HTTP2, and You 1.1
HTML5, HTTP2, and You 1.1
 

More from IndicThreads

Understanding Bitcoin (Blockchain) and its Potential for Disruptive Applications
Understanding Bitcoin (Blockchain) and its Potential for Disruptive ApplicationsUnderstanding Bitcoin (Blockchain) and its Potential for Disruptive Applications
Understanding Bitcoin (Blockchain) and its Potential for Disruptive ApplicationsIndicThreads
 
Go Programming Language - Learning The Go Lang way
Go Programming Language - Learning The Go Lang wayGo Programming Language - Learning The Go Lang way
Go Programming Language - Learning The Go Lang wayIndicThreads
 
Building Resilient Microservices
Building Resilient Microservices Building Resilient Microservices
Building Resilient Microservices IndicThreads
 
App using golang indicthreads
App using golang  indicthreadsApp using golang  indicthreads
App using golang indicthreadsIndicThreads
 
Building on quicksand microservices indicthreads
Building on quicksand microservices  indicthreadsBuilding on quicksand microservices  indicthreads
Building on quicksand microservices indicthreadsIndicThreads
 
How to Think in RxJava Before Reacting
How to Think in RxJava Before ReactingHow to Think in RxJava Before Reacting
How to Think in RxJava Before ReactingIndicThreads
 
Iot secure connected devices indicthreads
Iot secure connected devices indicthreadsIot secure connected devices indicthreads
Iot secure connected devices indicthreadsIndicThreads
 
Real world IoT for enterprises
Real world IoT for enterprisesReal world IoT for enterprises
Real world IoT for enterprisesIndicThreads
 
IoT testing and quality assurance indicthreads
IoT testing and quality assurance indicthreadsIoT testing and quality assurance indicthreads
IoT testing and quality assurance indicthreadsIndicThreads
 
Functional Programming Past Present Future
Functional Programming Past Present FutureFunctional Programming Past Present Future
Functional Programming Past Present FutureIndicThreads
 
Harnessing the Power of Java 8 Streams
Harnessing the Power of Java 8 Streams Harnessing the Power of Java 8 Streams
Harnessing the Power of Java 8 Streams IndicThreads
 
Building & scaling a live streaming mobile platform - Gr8 road to fame
Building & scaling a live streaming mobile platform - Gr8 road to fameBuilding & scaling a live streaming mobile platform - Gr8 road to fame
Building & scaling a live streaming mobile platform - Gr8 road to fameIndicThreads
 
Internet of things architecture perspective - IndicThreads Conference
Internet of things architecture perspective - IndicThreads ConferenceInternet of things architecture perspective - IndicThreads Conference
Internet of things architecture perspective - IndicThreads ConferenceIndicThreads
 
Cars and Computers: Building a Java Carputer
 Cars and Computers: Building a Java Carputer Cars and Computers: Building a Java Carputer
Cars and Computers: Building a Java CarputerIndicThreads
 
Scrap Your MapReduce - Apache Spark
 Scrap Your MapReduce - Apache Spark Scrap Your MapReduce - Apache Spark
Scrap Your MapReduce - Apache SparkIndicThreads
 
Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & Docker
 Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & Docker Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & Docker
Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & DockerIndicThreads
 
Speed up your build pipeline for faster feedback
Speed up your build pipeline for faster feedbackSpeed up your build pipeline for faster feedback
Speed up your build pipeline for faster feedbackIndicThreads
 
Unraveling OpenStack Clouds
 Unraveling OpenStack Clouds Unraveling OpenStack Clouds
Unraveling OpenStack CloudsIndicThreads
 
Digital Transformation of the Enterprise. What IT leaders need to know!
Digital Transformation of the Enterprise. What IT  leaders need to know!Digital Transformation of the Enterprise. What IT  leaders need to know!
Digital Transformation of the Enterprise. What IT leaders need to know!IndicThreads
 
Architectural Considerations For Complex Mobile And Web Applications
 Architectural Considerations For Complex Mobile And Web Applications Architectural Considerations For Complex Mobile And Web Applications
Architectural Considerations For Complex Mobile And Web ApplicationsIndicThreads
 

More from IndicThreads (20)

Understanding Bitcoin (Blockchain) and its Potential for Disruptive Applications
Understanding Bitcoin (Blockchain) and its Potential for Disruptive ApplicationsUnderstanding Bitcoin (Blockchain) and its Potential for Disruptive Applications
Understanding Bitcoin (Blockchain) and its Potential for Disruptive Applications
 
Go Programming Language - Learning The Go Lang way
Go Programming Language - Learning The Go Lang wayGo Programming Language - Learning The Go Lang way
Go Programming Language - Learning The Go Lang way
 
Building Resilient Microservices
Building Resilient Microservices Building Resilient Microservices
Building Resilient Microservices
 
App using golang indicthreads
App using golang  indicthreadsApp using golang  indicthreads
App using golang indicthreads
 
Building on quicksand microservices indicthreads
Building on quicksand microservices  indicthreadsBuilding on quicksand microservices  indicthreads
Building on quicksand microservices indicthreads
 
How to Think in RxJava Before Reacting
How to Think in RxJava Before ReactingHow to Think in RxJava Before Reacting
How to Think in RxJava Before Reacting
 
Iot secure connected devices indicthreads
Iot secure connected devices indicthreadsIot secure connected devices indicthreads
Iot secure connected devices indicthreads
 
Real world IoT for enterprises
Real world IoT for enterprisesReal world IoT for enterprises
Real world IoT for enterprises
 
IoT testing and quality assurance indicthreads
IoT testing and quality assurance indicthreadsIoT testing and quality assurance indicthreads
IoT testing and quality assurance indicthreads
 
Functional Programming Past Present Future
Functional Programming Past Present FutureFunctional Programming Past Present Future
Functional Programming Past Present Future
 
Harnessing the Power of Java 8 Streams
Harnessing the Power of Java 8 Streams Harnessing the Power of Java 8 Streams
Harnessing the Power of Java 8 Streams
 
Building & scaling a live streaming mobile platform - Gr8 road to fame
Building & scaling a live streaming mobile platform - Gr8 road to fameBuilding & scaling a live streaming mobile platform - Gr8 road to fame
Building & scaling a live streaming mobile platform - Gr8 road to fame
 
Internet of things architecture perspective - IndicThreads Conference
Internet of things architecture perspective - IndicThreads ConferenceInternet of things architecture perspective - IndicThreads Conference
Internet of things architecture perspective - IndicThreads Conference
 
Cars and Computers: Building a Java Carputer
 Cars and Computers: Building a Java Carputer Cars and Computers: Building a Java Carputer
Cars and Computers: Building a Java Carputer
 
Scrap Your MapReduce - Apache Spark
 Scrap Your MapReduce - Apache Spark Scrap Your MapReduce - Apache Spark
Scrap Your MapReduce - Apache Spark
 
Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & Docker
 Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & Docker Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & Docker
Continuous Integration (CI) and Continuous Delivery (CD) using Jenkins & Docker
 
Speed up your build pipeline for faster feedback
Speed up your build pipeline for faster feedbackSpeed up your build pipeline for faster feedback
Speed up your build pipeline for faster feedback
 
Unraveling OpenStack Clouds
 Unraveling OpenStack Clouds Unraveling OpenStack Clouds
Unraveling OpenStack Clouds
 
Digital Transformation of the Enterprise. What IT leaders need to know!
Digital Transformation of the Enterprise. What IT  leaders need to know!Digital Transformation of the Enterprise. What IT  leaders need to know!
Digital Transformation of the Enterprise. What IT leaders need to know!
 
Architectural Considerations For Complex Mobile And Web Applications
 Architectural Considerations For Complex Mobile And Web Applications Architectural Considerations For Complex Mobile And Web Applications
Architectural Considerations For Complex Mobile And Web Applications
 

Recently uploaded

How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 

Recently uploaded (20)

How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 

HTTP/2 is here! Why the web needs it and its impact