SlideShare a Scribd company logo
BE RESPONSIVE WITH YOUR SITE 
@koombea #BeResponsive
Speakers 
David Bohorquez 
Front End Lead 
Koombea 
Rick Nelson 
Technical Solutions Architect 
NGINX 
@koombea #BeResponsive
DAVID: 
Agenda 
- What is responsive & why? 
- Which option should you choose? 
- Web responsive Design Strategy 
- Ways to build for responsive 
RICK: 
- Why performance matters 
- The impact of mobile 
- Optimizing for performance 
@koombea #BeResponsive
What is responsive & why? 
- Came out a couple of years ago. 
- Designing a website or web enabled app that can adjust and 
perform optimally for whichever device accesses it. 
- Mobile usage increased & became a necessity. 
@koombea #BeResponsive
Responsive VS Mobile VS Native App 
@koombea #BeResponsive
90% of people use multiple screens 
sequentially. (Source: uberflip) 
66% of smartphone & tablet users are 
frustrated with page load times. (Source SEO 
social) 
Click here to tweet it! 
@koombea #BeResponsive 
Click here for the stat!
When responsive? 
@koombea #BeResponsive
Mobile Version 
Pro’s: 
- Dedicated Mobile Version. Requires you to build 
a separate site. 
- Optimize for mobile. 
- Less/Simpler work. Better for rapid mobile 
presence. 
Con’s: 
- Maintain 2 separates sites. 
- 2 URLs duplicates SEO (good or bad). 
@koombea #BeResponsive
Native App 
Pro’s: 
- Dedicated marketplace. Ex: App Store or 
Google Play. 
- Makes better use of device hardware & new 
features. Better performance. 
Con’s: 
- Requires one App for each different platform. 
- Process of submission (takes a long time). 
- More money.
Responsive 
Pro’s: 
- Requires you to build only one site. 
- Lower dev cost. 
- Long run: Is future-friendlier. 
- Less maintenance. 
- Only worry about one site. 
- Faster deploy 
Con’s: 
- Requires more complex work. 
- Because you have to build for 
every device it is accessed from.
Should you build for responsive? 
1. Marketing Site (Usually yes). 
2. Web App (Depends). 
3. E-commerce (Usually yes). 
@koombea #BeResponsive
Shopify, Zappos, Amazon, eBay
My Artisan Ink Responsive Case 
Study 
Click here to see the Responsive Site built by Koombea- have fun!
Web Responsive Design Strategies 
- Graceful degradation. 
- Mobile last 
- Progressive enhancement 
- Mobile first 
- Content first 
@koombea #BeResponsive
Responsive strategies 
Graceful Degradation 
Progressive Enhancement 
@koombea #BeResponsive
Ways to build for Responsive 
Detection tactics: 
- Device/OS/Browser detection (unreliable). 
- Feature detection. 
- What the device detection should be 
identifying are the capabilities of the device 
that is being used to access the website so 
that the appropriate elements of the site can be 
returned to the user. 
@koombea #BeResponsive 
Click here to check out Modernizr!
Building Responsive Websites 
Rick Nelson 
Technical Solutions Architect 
@koombea #BeResponsive 
Click here to email Rick
Web performance matters
Your users are in charge 
• You may own the content and features, but your users are the ones in charge 
• They alone decide: 
Which 
sites 
they 
visit 
The 
apps 
they 
need 
• If you can’t provide your users with what they need, when they need it, they will 
go elsewhere. 
• If your page has not loaded within 3 seconds, up to 40% of your users will give 
up on you. 
The 
performance 
they’ll 
tolerate 
When 
to 
give 
up 
Click here to read more stats.
Every user counts 
It doesn’t matter how busy your site is: 
- Flash Crowd 
- HTTP Post Attack, Slow Read Attack 
… they don’t know or care! 
“We want you to be able to flick from one page to another as quickly as you 
can flick a page on a book. So we’re really aiming very, very high here… at 
something like 100 milliseconds.” 
Urs Hölzle, Senior VP Operations, Google
The Impact of Mobile Users 
• More Users 
• With the ability to access your app at any time from anywhere 
• Events can explode and cause massive spikes 
– App upgrade 
– News event 
• Slower connections 
• Lower Bandwidth
Mobile Apps vs. Mobile Web 
• Mobile apps use API calls not web pages 
• More short requests 
• More connections 
• Support for Multiple App versions 
Your server needs to handle millions of connections delivering short 
responses very quickly
What can you do?
No Silver Bullet
4 opportunities to optimize 
Internet 
Python 
Ruby 
node.js 
Java 
Client Device Network Application Stack Code
Improve performance on Client Device 
• Reduce HTTP GETs and bandwidth: 
– Merge and reduce resources 
– Smart control of client caching 
• Rearrange resources to speed up rendering 
• Your options: 
– Preprocess in Asset Pipeline 
– In-app (Google Pagespeed) 
– As-a-Service
Improve performance on the Network 
• Faster resource downloads: 
– Content Delivery Network 
– Google SPDY 
– OCSP stapling 
• Your options: 
– Use a CDN 
– Use NGINX+
Improve performance of the Application 
Stack 
• What do we mean? 
Internet 
• The ‘Application Stack’ bridges HTTP traffic 
to your code, APIs and Static content 
Your code: 
• Python, 
Ruby, 
node.js, Java 
APIs 
• Internal and 
External APIs 
“Static” 
Content 
• On disk 
• In database 
HTTP
Four steps to a faster application 
Optimize HTTP processing 
Scale the backend servers 
Cache common responses 
Be smart with your traffic
What is the challenge with HTTP? 
Hundreds of 
concurrent 
connections… 
require hundreds of 
heavyweight threads or 
processes… 
competing for limited 
CPU and memory 
Client-side: 
Slow network 
Multiple connections 
HTTP Keepalives 
Server-side: 
Limited concurrency
Hundreds of 
concurrent 
connections… 
handed by a small number of 
multiplexing processes,… 
typically one process 
per core 
NGINX architecture
NGINX transforms application 
performance 
Internet Slow, high-concurrency N 
internet-side traffic 
Fast, efficient 
local-side traffic 
• NGINX has almost-unlimited concurrency 
– Transforms worst-case traffic to best-case 
– Maximizes application utilization
Scale the Backend Servers 
Load Balancing 
Internet N 
þ 
Improved 
Applica@on 
Availability 
þ 
Management 
þ 
Increased 
Capacity 
þ 
Advanced 
techniques 
e.g. 
A|B 
tes@ng 
Why? 
þ 
DNS 
Round 
Robin 
þ 
Hardware 
L4 
load 
balancer 
þ 
SoMware 
Reverse 
Proxy 
LB 
þ 
Cloud 
solu@on 
How?
Cache common responses 
GET 
/logo.png 
GET 
/logo.png 
Hybrid 
on-­‐disk 
and 
in-­‐memory 
cache 
N+
What about dynamic content? 
• Some 
content 
appears 
to 
be 
un-­‐cacheable 
• But 
oMen 
even 
dynamic 
content 
can 
be 
cached 
– Use 
cache 
purging 
– Use 
fast 
cache 
@mes
Be smart with your traffic 
• Priori@ze 
and 
rate-­‐limit 
requests 
and 
responses 
– Queues, 
Rate-­‐limits, 
Honeypots, 
ACLs 
• Use 
NGINX 
Plus 
to 
its 
full 
poten@al
A NGINX Mobile Example 
• Rou@ng 
desktop 
and 
mobile 
clients 
differently 
– Present 
different 
pages 
to 
mobile 
clients 
map $http_user_agent $whichUpstream { 
~iPhone mobile; 
~Android mobile; 
default desktop; 
} 
Upstream mobile { 
server 192.168.100.100:8080; 
server 192.168.100.101:8080; 
} 
Upstream mobile { 
server 192.168.100.100:80; 
server 192.168.100.101:80; 
} 
server { 
listen 80; 
location / { 
proxy_pass http://$whichUpstream; 
} 
}
How to be Successful with Responsive Sites (Koombea & NGINX) - English
NGINX Plus 
• NGINX 
Open 
Source 
+ 
Advanced 
Features 
– For 
Example: 
• Applica@on 
Health 
Checks 
• Session 
Persistence 
(S@cky 
Sessions) 
• Advanced 
Monitoring 
and 
Sta@s@cs 
• Cache 
Purge 
• HLS 
& 
HDS 
Video
Closing thoughts 
• Applica@on 
Performance 
is 
key 
to 
Applica@on 
Success 
• Four 
areas 
you 
should 
focus 
on: 
– The 
Applica@on 
– The 
Client 
– The 
Network 
– The 
Applica@on 
Stack 
• NGINX 
accelerates 
the 
Mobile 
Web 
and 
Mobile 
Apps 
• NGINX 
is 
used 
by 
40% 
of 
the 
top 
10,000 
sites
Find out more 
• hep://nginx.com 
– Webinars, 
The links are clickable! 
Documenta@on, 
Free 
Trial 
• hep://nginx.org 
– Open 
Source, 
Community, 
Documenta@on 
• @nginx, 
@nginxorg 
• hep://nginx.com/nginxconf/
@koombea 
Tweet us out! We'd appreciate it! 
386 Park Ave South, 10th Floor 
New York, NY 10016 
625 2nd St., Suite 280 
San Francisco, CA 94107 
Cra 53 # 79-01 L-301 
Barranquilla, Colombia 
Have questions? 
We are here to help. 
Email us at 
mvp@koombea.com 
#BeResponsive 
You can click here!

More Related Content

PDF
How to Validate Your Digital Product
PDF
7 Key Questions to Ask Your Prospective Tech Agency
PDF
How to find & pick a tech agency
PDF
Growing from 0 to 100 million users
PDF
How to build a MVP app as a non-tech founder
PPT
NYFT Minimum Sellable Product
PPTX
Tips & Tricks on how to build MVP
PPT
MVP: Minimum Viable Product vs. Maximum Value Product
How to Validate Your Digital Product
7 Key Questions to Ask Your Prospective Tech Agency
How to find & pick a tech agency
Growing from 0 to 100 million users
How to build a MVP app as a non-tech founder
NYFT Minimum Sellable Product
Tips & Tricks on how to build MVP
MVP: Minimum Viable Product vs. Maximum Value Product

What's hot (19)

PDF
Building a MVP [Webinar Edition]
PDF
Minimum Viable Product - theory and workshop
PDF
How to create your Minimum Viable Product - Raff Paquin
PPTX
Minimum viable product
PPT
Early Stage Venture Series - part 1
PDF
Mobile Apps 101
PDF
How-to Build a Minimum Viable Product (MVP)
PDF
Build A Minimum Viable Product PowerPoint Presentation Slides
PPTX
Building an MVP
PDF
Minimum Viable Product
PDF
Lean Startup Analytics and MVP – Lecture and Workshop at Zeppelin University
KEY
Mobile Apps for Businesses
PDF
Getting to Minimum Viable Product (MVP)
PPTX
How to build a successful Minimum Viable Product - Tips & Hacks from experts
PPT
Dropbox startup lessons learned 2011
PDF
Startup Technology: Cheatsheet for Non-Techies
PDF
Building Your Brand Online with SEO
PDF
Growth Hacking at SPN
PPTX
Screw the MVP, Build a MLP (Minimum Lovable Product)
Building a MVP [Webinar Edition]
Minimum Viable Product - theory and workshop
How to create your Minimum Viable Product - Raff Paquin
Minimum viable product
Early Stage Venture Series - part 1
Mobile Apps 101
How-to Build a Minimum Viable Product (MVP)
Build A Minimum Viable Product PowerPoint Presentation Slides
Building an MVP
Minimum Viable Product
Lean Startup Analytics and MVP – Lecture and Workshop at Zeppelin University
Mobile Apps for Businesses
Getting to Minimum Viable Product (MVP)
How to build a successful Minimum Viable Product - Tips & Hacks from experts
Dropbox startup lessons learned 2011
Startup Technology: Cheatsheet for Non-Techies
Building Your Brand Online with SEO
Growth Hacking at SPN
Screw the MVP, Build a MLP (Minimum Lovable Product)
Ad

Viewers also liked (19)

PDF
Swift for back end: A new generation of full stack languages?
PDF
How To Deliver a Project With a 150% Advance
PDF
Instant Mobile Experiences: How to Create Unique In-Store Marketing Opportuni...
PDF
Responsive Mit Irhem Webseiten (German Edition)
PDF
New Koombea Branding and Logo (2014)
PDF
UX vs. UI? (SPA)
PDF
Simple Steps to UX/UI Web Design
PPTX
Webpage Caches - the big picture (WordPress too)
PPTX
5 critical-optimizations.v2
PPTX
Accelerating Nginx Web Server Performance
PPTX
Web Performance, Scalability, and Testing Techniques - Boston PHP Meetup
PDF
Running PHP on Nginx / PHP wgtn
PDF
大學生簡報團.宣傳之初步構想
PDF
如何設計迷死人的Windows 8 Apps
ODP
Caching and tuning fun for high scalability @ FOSDEM 2012
PDF
Grid runner,let's talk about visual
PDF
社群conf的設計大亂鬥
PDF
High Performance Php My Sql Scaling Techniques
PDF
HappyUX Education: Things beyond methodologies
Swift for back end: A new generation of full stack languages?
How To Deliver a Project With a 150% Advance
Instant Mobile Experiences: How to Create Unique In-Store Marketing Opportuni...
Responsive Mit Irhem Webseiten (German Edition)
New Koombea Branding and Logo (2014)
UX vs. UI? (SPA)
Simple Steps to UX/UI Web Design
Webpage Caches - the big picture (WordPress too)
5 critical-optimizations.v2
Accelerating Nginx Web Server Performance
Web Performance, Scalability, and Testing Techniques - Boston PHP Meetup
Running PHP on Nginx / PHP wgtn
大學生簡報團.宣傳之初步構想
如何設計迷死人的Windows 8 Apps
Caching and tuning fun for high scalability @ FOSDEM 2012
Grid runner,let's talk about visual
社群conf的設計大亂鬥
High Performance Php My Sql Scaling Techniques
HappyUX Education: Things beyond methodologies
Ad

Similar to How to be Successful with Responsive Sites (Koombea & NGINX) - English (20)

PPTX
The Art of Mobile Performance (Mobiconf 2015)
PPTX
Supercharge Application Delivery to Satisfy Users
PPTX
Clear as mud: Explaining Web Apps, Mobile Apps, Cloud Computing and Design "t...
PDF
Trends in front end engineering_handouts
PDF
Modern Web Applications
PDF
web, spa vs traditional - 2016
PPTX
Cloud Services Powered by IBM SoftLayer and NetflixOSS
PPTX
The PRPL Pattern
PDF
Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...
PDF
Progressive Web Apps
PDF
A year with progressive web apps! #webinale
PDF
How to deal with mobile traffic expansion
PPT
Google Cloud Developer Challenge - GDG Belgaum
PDF
Web & Mobile App Development Company in UK
PDF
Web & Mobile App Development Company in UK
PPTX
How to stop fingerpointing when your application is down
PDF
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
PDF
Progressive Web Applications
PDF
Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014
PDF
Extreme Web Performance for Mobile Device Fluent 2015
The Art of Mobile Performance (Mobiconf 2015)
Supercharge Application Delivery to Satisfy Users
Clear as mud: Explaining Web Apps, Mobile Apps, Cloud Computing and Design "t...
Trends in front end engineering_handouts
Modern Web Applications
web, spa vs traditional - 2016
Cloud Services Powered by IBM SoftLayer and NetflixOSS
The PRPL Pattern
Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...
Progressive Web Apps
A year with progressive web apps! #webinale
How to deal with mobile traffic expansion
Google Cloud Developer Challenge - GDG Belgaum
Web & Mobile App Development Company in UK
Web & Mobile App Development Company in UK
How to stop fingerpointing when your application is down
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
Progressive Web Applications
Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014
Extreme Web Performance for Mobile Device Fluent 2015

More from Koombea (15)

PDF
Machine learning: Koombea TechTalks
PDF
How to Define an MVP: Koombea TechTalks
PDF
Infrastructure as Code with Terraform: Koombea TechTalks
PDF
How WordPress Frameworks actually work
PDF
Wordpress develompent with Docker
PDF
Plugins on word press
PDF
How to make wordpress an effective tool for the design of usable and function...
PDF
Simplifying Code: Koombea TechTalks
PDF
Dynamic Project Management: Koombea TechTalks
PDF
A Look Into Blockchain: Koombea TechTalks
PDF
Building Innovative Products for SaaS
PDF
Intro to Web Accessibility: Koombea TechTalks
PDF
Implementing Mobile Application on your retail Store
PDF
How CMOs Can Build a Mobile App Strategy
PDF
Simple Steps to UX/UI Web Design- Español
Machine learning: Koombea TechTalks
How to Define an MVP: Koombea TechTalks
Infrastructure as Code with Terraform: Koombea TechTalks
How WordPress Frameworks actually work
Wordpress develompent with Docker
Plugins on word press
How to make wordpress an effective tool for the design of usable and function...
Simplifying Code: Koombea TechTalks
Dynamic Project Management: Koombea TechTalks
A Look Into Blockchain: Koombea TechTalks
Building Innovative Products for SaaS
Intro to Web Accessibility: Koombea TechTalks
Implementing Mobile Application on your retail Store
How CMOs Can Build a Mobile App Strategy
Simple Steps to UX/UI Web Design- Español

Recently uploaded (20)

PPTX
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb
PPTX
AC-Unit1.pptx CRYPTOGRAPHIC NNNNFOR ALL
PPTX
building Planning Overview for step wise design.pptx
PPTX
Wisp Textiles: Where Comfort Meets Everyday Style
PPTX
YV PROFILE PROJECTS PROFILE PRES. DESIGN
PPTX
artificialintelligencedata driven analytics23.pptx
PPTX
Implications Existing phase plan and its feasibility.pptx
PDF
Phone away, tabs closed: No multitasking
PDF
Facade & Landscape Lighting Techniques and Trends.pptx.pdf
PPTX
mahatma gandhi bus terminal in india Case Study.pptx
PPTX
An introduction to AI in research and reference management
DOCX
The story of the first moon landing.docx
PPTX
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
PDF
YOW2022-BNE-MinimalViableArchitecture.pdf
PPT
unit 1 ppt.ppthhhhhhhhhhhhhhhhhhhhhhhhhh
PPTX
AD Bungalow Case studies Sem 2.pptxvwewev
PPT
Machine printing techniques and plangi dyeing
PDF
Urban Design Final Project-Context
PDF
Wio LTE JP Version v1.3b- 4G, Cat.1, Espruino Compatible\202001935, PCBA;Wio ...
PPTX
DOC-20250430-WA0014._20250714_235747_0000.pptx
BSCS lesson 3.pptxnbbjbb mnbkjbkbbkbbkjb
AC-Unit1.pptx CRYPTOGRAPHIC NNNNFOR ALL
building Planning Overview for step wise design.pptx
Wisp Textiles: Where Comfort Meets Everyday Style
YV PROFILE PROJECTS PROFILE PRES. DESIGN
artificialintelligencedata driven analytics23.pptx
Implications Existing phase plan and its feasibility.pptx
Phone away, tabs closed: No multitasking
Facade & Landscape Lighting Techniques and Trends.pptx.pdf
mahatma gandhi bus terminal in india Case Study.pptx
An introduction to AI in research and reference management
The story of the first moon landing.docx
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
YOW2022-BNE-MinimalViableArchitecture.pdf
unit 1 ppt.ppthhhhhhhhhhhhhhhhhhhhhhhhhh
AD Bungalow Case studies Sem 2.pptxvwewev
Machine printing techniques and plangi dyeing
Urban Design Final Project-Context
Wio LTE JP Version v1.3b- 4G, Cat.1, Espruino Compatible\202001935, PCBA;Wio ...
DOC-20250430-WA0014._20250714_235747_0000.pptx

How to be Successful with Responsive Sites (Koombea & NGINX) - English

  • 1. BE RESPONSIVE WITH YOUR SITE @koombea #BeResponsive
  • 2. Speakers David Bohorquez Front End Lead Koombea Rick Nelson Technical Solutions Architect NGINX @koombea #BeResponsive
  • 3. DAVID: Agenda - What is responsive & why? - Which option should you choose? - Web responsive Design Strategy - Ways to build for responsive RICK: - Why performance matters - The impact of mobile - Optimizing for performance @koombea #BeResponsive
  • 4. What is responsive & why? - Came out a couple of years ago. - Designing a website or web enabled app that can adjust and perform optimally for whichever device accesses it. - Mobile usage increased & became a necessity. @koombea #BeResponsive
  • 5. Responsive VS Mobile VS Native App @koombea #BeResponsive
  • 6. 90% of people use multiple screens sequentially. (Source: uberflip) 66% of smartphone & tablet users are frustrated with page load times. (Source SEO social) Click here to tweet it! @koombea #BeResponsive Click here for the stat!
  • 8. Mobile Version Pro’s: - Dedicated Mobile Version. Requires you to build a separate site. - Optimize for mobile. - Less/Simpler work. Better for rapid mobile presence. Con’s: - Maintain 2 separates sites. - 2 URLs duplicates SEO (good or bad). @koombea #BeResponsive
  • 9. Native App Pro’s: - Dedicated marketplace. Ex: App Store or Google Play. - Makes better use of device hardware & new features. Better performance. Con’s: - Requires one App for each different platform. - Process of submission (takes a long time). - More money.
  • 10. Responsive Pro’s: - Requires you to build only one site. - Lower dev cost. - Long run: Is future-friendlier. - Less maintenance. - Only worry about one site. - Faster deploy Con’s: - Requires more complex work. - Because you have to build for every device it is accessed from.
  • 11. Should you build for responsive? 1. Marketing Site (Usually yes). 2. Web App (Depends). 3. E-commerce (Usually yes). @koombea #BeResponsive
  • 13. My Artisan Ink Responsive Case Study Click here to see the Responsive Site built by Koombea- have fun!
  • 14. Web Responsive Design Strategies - Graceful degradation. - Mobile last - Progressive enhancement - Mobile first - Content first @koombea #BeResponsive
  • 15. Responsive strategies Graceful Degradation Progressive Enhancement @koombea #BeResponsive
  • 16. Ways to build for Responsive Detection tactics: - Device/OS/Browser detection (unreliable). - Feature detection. - What the device detection should be identifying are the capabilities of the device that is being used to access the website so that the appropriate elements of the site can be returned to the user. @koombea #BeResponsive Click here to check out Modernizr!
  • 17. Building Responsive Websites Rick Nelson Technical Solutions Architect @koombea #BeResponsive Click here to email Rick
  • 19. Your users are in charge • You may own the content and features, but your users are the ones in charge • They alone decide: Which sites they visit The apps they need • If you can’t provide your users with what they need, when they need it, they will go elsewhere. • If your page has not loaded within 3 seconds, up to 40% of your users will give up on you. The performance they’ll tolerate When to give up Click here to read more stats.
  • 20. Every user counts It doesn’t matter how busy your site is: - Flash Crowd - HTTP Post Attack, Slow Read Attack … they don’t know or care! “We want you to be able to flick from one page to another as quickly as you can flick a page on a book. So we’re really aiming very, very high here… at something like 100 milliseconds.” Urs Hölzle, Senior VP Operations, Google
  • 21. The Impact of Mobile Users • More Users • With the ability to access your app at any time from anywhere • Events can explode and cause massive spikes – App upgrade – News event • Slower connections • Lower Bandwidth
  • 22. Mobile Apps vs. Mobile Web • Mobile apps use API calls not web pages • More short requests • More connections • Support for Multiple App versions Your server needs to handle millions of connections delivering short responses very quickly
  • 25. 4 opportunities to optimize Internet Python Ruby node.js Java Client Device Network Application Stack Code
  • 26. Improve performance on Client Device • Reduce HTTP GETs and bandwidth: – Merge and reduce resources – Smart control of client caching • Rearrange resources to speed up rendering • Your options: – Preprocess in Asset Pipeline – In-app (Google Pagespeed) – As-a-Service
  • 27. Improve performance on the Network • Faster resource downloads: – Content Delivery Network – Google SPDY – OCSP stapling • Your options: – Use a CDN – Use NGINX+
  • 28. Improve performance of the Application Stack • What do we mean? Internet • The ‘Application Stack’ bridges HTTP traffic to your code, APIs and Static content Your code: • Python, Ruby, node.js, Java APIs • Internal and External APIs “Static” Content • On disk • In database HTTP
  • 29. Four steps to a faster application Optimize HTTP processing Scale the backend servers Cache common responses Be smart with your traffic
  • 30. What is the challenge with HTTP? Hundreds of concurrent connections… require hundreds of heavyweight threads or processes… competing for limited CPU and memory Client-side: Slow network Multiple connections HTTP Keepalives Server-side: Limited concurrency
  • 31. Hundreds of concurrent connections… handed by a small number of multiplexing processes,… typically one process per core NGINX architecture
  • 32. NGINX transforms application performance Internet Slow, high-concurrency N internet-side traffic Fast, efficient local-side traffic • NGINX has almost-unlimited concurrency – Transforms worst-case traffic to best-case – Maximizes application utilization
  • 33. Scale the Backend Servers Load Balancing Internet N þ Improved Applica@on Availability þ Management þ Increased Capacity þ Advanced techniques e.g. A|B tes@ng Why? þ DNS Round Robin þ Hardware L4 load balancer þ SoMware Reverse Proxy LB þ Cloud solu@on How?
  • 34. Cache common responses GET /logo.png GET /logo.png Hybrid on-­‐disk and in-­‐memory cache N+
  • 35. What about dynamic content? • Some content appears to be un-­‐cacheable • But oMen even dynamic content can be cached – Use cache purging – Use fast cache @mes
  • 36. Be smart with your traffic • Priori@ze and rate-­‐limit requests and responses – Queues, Rate-­‐limits, Honeypots, ACLs • Use NGINX Plus to its full poten@al
  • 37. A NGINX Mobile Example • Rou@ng desktop and mobile clients differently – Present different pages to mobile clients map $http_user_agent $whichUpstream { ~iPhone mobile; ~Android mobile; default desktop; } Upstream mobile { server 192.168.100.100:8080; server 192.168.100.101:8080; } Upstream mobile { server 192.168.100.100:80; server 192.168.100.101:80; } server { listen 80; location / { proxy_pass http://$whichUpstream; } }
  • 39. NGINX Plus • NGINX Open Source + Advanced Features – For Example: • Applica@on Health Checks • Session Persistence (S@cky Sessions) • Advanced Monitoring and Sta@s@cs • Cache Purge • HLS & HDS Video
  • 40. Closing thoughts • Applica@on Performance is key to Applica@on Success • Four areas you should focus on: – The Applica@on – The Client – The Network – The Applica@on Stack • NGINX accelerates the Mobile Web and Mobile Apps • NGINX is used by 40% of the top 10,000 sites
  • 41. Find out more • hep://nginx.com – Webinars, The links are clickable! Documenta@on, Free Trial • hep://nginx.org – Open Source, Community, Documenta@on • @nginx, @nginxorg • hep://nginx.com/nginxconf/
  • 42. @koombea Tweet us out! We'd appreciate it! 386 Park Ave South, 10th Floor New York, NY 10016 625 2nd St., Suite 280 San Francisco, CA 94107 Cra 53 # 79-01 L-301 Barranquilla, Colombia Have questions? We are here to help. Email us at mvp@koombea.com #BeResponsive You can click here!