SlideShare a Scribd company logo
Apply A/B Testing with
NGINX Routing Policy
Mr.Supachai Jaturaprom (Tum)
Pre-sales Engineer
CCIE#65006
Email: supachai@vstecs.co.th
VSTECS (Thailand) Co.,Ltd.
NGINX Community Thailand.
VSTECS (Thailand) Co.,Ltd. 1
What is A/B Testing?
https://www.orderhive.com/knowledge-center/ab-testing
VSTECS (Thailand) Co.,Ltd. 2
The Importance of A/B Testing
https://exp-platform.com/Documents/2014%20experimentersRulesOfThumb.pdf
“ Small Changes can have a Big Impact to Key Metrics ”
VSTECS (Thailand) Co.,Ltd. 3
+450M
sites run NGINX
WE HAVE TREMENDOUS INSIGHT INTO APPLICATION PATTERNS
#1
Source: Netcraft June 2020 Web Server Survey
40%
Source: NGINX User survey 2017, 2018, 2019
of NGINX deployments
are as an API gateway
A/B
Testing
VSTECS (Thailand) Co.,Ltd. 5
VSTECS (Thailand) Co.,Ltd. 6
Method for Deploy Production ?
Blue-Green Deployment
Canary Release
Feature Toggles
Experiment toggle
Permission toggle
……..
Method-1 : Apply Blue-Green with NGINX
0 %
100 %
100 %
VSTECS (Thailand) Co.,Ltd. 7
All Users
NGINX
95 %
5 %
100 %
VSTECS (Thailand) Co.,Ltd. 8
All Users
NGINX
Method-2 : Apply Canary Release with NGINX
90 %
10 %
100 %
VSTECS (Thailand) Co.,Ltd. 9
Group B
NGINX
Method-3 : Apply A/B Testing with NGINX
Group A
- Client IP Address
- Token (URI / Header)
- Argument more….
- NGINX Variables ($request_id, ….)
Client classification
uid=111
uid=222
100 %
VSTECS (Thailand) Co.,Ltd. 10
Group B (102)
NGINX
Method-4 : Apply A/B Testing with NGINX (JWT)
Group A (101)
- Authentication
- JWT Claim content routing
Insert JWT in
- URI Argument
- Cookie
Live Demo: Apply A/B Testing with NGINX
A/B testing with random client spliting.
A/B testing with sticky route.
Dynamic A/B Testing with multi-domain
VSTECS (Thailand) Co.,Ltd. 11
A/B Testing with JWT
Resources
Git Repository of A/B testing with NGINX
• https://github.com/supachai-j/ab-testing-with-nginx
• Demo-1: A/B testing with random client spliting.
• Demo-2: A/B testing with sticky route.
• Demo-3: Dynamic A/B Testing with Multi-domain.
• Demo-4: A/B Testing with JWT
Getting Started with NGINX Guides
• https://docs.nginx.com/nginx/admin-guide/installing-nginx/installing-nginx-docker/
• https://www.nginx.com/blog/performing-a-b-testing-nginx-plus
• https://www.nginx.com/blog/dynamic-a-b-testing-with-nginx-plus
• https://www.nginx.com/blog/authentication-content-based-routing-jwts-nginx-plus
VSTECS (Thailand) Co.,Ltd. 12
NGINX Community Thailand.

More Related Content

What's hot (20)

PPTX
Test Everything: TrustRadius Delivers Customer Value with Experimentation
Optimizely
 
PPTX
7 Habits of Highly Effective Personalisation Organisations | Optimizely ANZ W...
Optimizely
 
PDF
Opticon 2017 Decisions at Scale
Optimizely
 
PPTX
Get better reviews and ratings for your app!
Bugs Detective
 
PDF
The Future of Optimizely for Technical Teams
Optimizely
 
PDF
[Webinar] Innovate Faster by Adopting The Modern Growth Stack
Optimizely
 
PDF
Atlassian's Mystique CLI, Minimizing the Experiment Development Cycle
Optimizely
 
PDF
The anatomy of an A/B Test - JSConf Colombia Workshop
Eduardo Shiota Yasuda
 
PPTX
Tackling Strategic Engineering Challenges
Applause
 
PDF
Setting up an A/B-testing framework
Agnes van Belle
 
PDF
4 Steps Toward Scientific A/B Testing
Janessa Lantz
 
PPTX
Optimizely NYC Developer Meetup - Experimentation at Blue Apron
Optimizely
 
PDF
Ahead of the Curve: How 23andMe Improved UX with Performance Edge
Optimizely
 
PPTX
Opticon 2017 Pushing the Boundaries of Experimentation
Optimizely
 
PPTX
Delivering Excellent Digital Quality to Your Customers
Applause
 
PPTX
Opticon 2017 How Developers Can Take Experimentation
Optimizely
 
PDF
Opticon 2015 - Getting Started with the Optimizely Developer Platform
Optimizely
 
PPTX
Opticon 2017 Experimenting in Modern Web Applications
Optimizely
 
PDF
Lean Software Development: Validated Learning
Òscar Vilaplana
 
PPTX
Opticon 2017 Day in the Life of a Modern Experimenter
Optimizely
 
Test Everything: TrustRadius Delivers Customer Value with Experimentation
Optimizely
 
7 Habits of Highly Effective Personalisation Organisations | Optimizely ANZ W...
Optimizely
 
Opticon 2017 Decisions at Scale
Optimizely
 
Get better reviews and ratings for your app!
Bugs Detective
 
The Future of Optimizely for Technical Teams
Optimizely
 
[Webinar] Innovate Faster by Adopting The Modern Growth Stack
Optimizely
 
Atlassian's Mystique CLI, Minimizing the Experiment Development Cycle
Optimizely
 
The anatomy of an A/B Test - JSConf Colombia Workshop
Eduardo Shiota Yasuda
 
Tackling Strategic Engineering Challenges
Applause
 
Setting up an A/B-testing framework
Agnes van Belle
 
4 Steps Toward Scientific A/B Testing
Janessa Lantz
 
Optimizely NYC Developer Meetup - Experimentation at Blue Apron
Optimizely
 
Ahead of the Curve: How 23andMe Improved UX with Performance Edge
Optimizely
 
Opticon 2017 Pushing the Boundaries of Experimentation
Optimizely
 
Delivering Excellent Digital Quality to Your Customers
Applause
 
Opticon 2017 How Developers Can Take Experimentation
Optimizely
 
Opticon 2015 - Getting Started with the Optimizely Developer Platform
Optimizely
 
Opticon 2017 Experimenting in Modern Web Applications
Optimizely
 
Lean Software Development: Validated Learning
Òscar Vilaplana
 
Opticon 2017 Day in the Life of a Modern Experimenter
Optimizely
 

Recently uploaded (20)

PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PDF
Python basic programing language for automation
DanialHabibi2
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
Python basic programing language for automation
DanialHabibi2
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Ad

Apply A/B Testing with NGINX Routing Policy

  • 1. Apply A/B Testing with NGINX Routing Policy Mr.Supachai Jaturaprom (Tum) Pre-sales Engineer CCIE#65006 Email: [email protected] VSTECS (Thailand) Co.,Ltd. NGINX Community Thailand. VSTECS (Thailand) Co.,Ltd. 1
  • 2. What is A/B Testing? https://www.orderhive.com/knowledge-center/ab-testing VSTECS (Thailand) Co.,Ltd. 2
  • 3. The Importance of A/B Testing https://exp-platform.com/Documents/2014%20experimentersRulesOfThumb.pdf “ Small Changes can have a Big Impact to Key Metrics ” VSTECS (Thailand) Co.,Ltd. 3
  • 4. +450M sites run NGINX WE HAVE TREMENDOUS INSIGHT INTO APPLICATION PATTERNS #1 Source: Netcraft June 2020 Web Server Survey 40% Source: NGINX User survey 2017, 2018, 2019 of NGINX deployments are as an API gateway
  • 6. VSTECS (Thailand) Co.,Ltd. 6 Method for Deploy Production ? Blue-Green Deployment Canary Release Feature Toggles Experiment toggle Permission toggle ……..
  • 7. Method-1 : Apply Blue-Green with NGINX 0 % 100 % 100 % VSTECS (Thailand) Co.,Ltd. 7 All Users NGINX
  • 8. 95 % 5 % 100 % VSTECS (Thailand) Co.,Ltd. 8 All Users NGINX Method-2 : Apply Canary Release with NGINX
  • 9. 90 % 10 % 100 % VSTECS (Thailand) Co.,Ltd. 9 Group B NGINX Method-3 : Apply A/B Testing with NGINX Group A - Client IP Address - Token (URI / Header) - Argument more…. - NGINX Variables ($request_id, ….) Client classification
  • 10. uid=111 uid=222 100 % VSTECS (Thailand) Co.,Ltd. 10 Group B (102) NGINX Method-4 : Apply A/B Testing with NGINX (JWT) Group A (101) - Authentication - JWT Claim content routing Insert JWT in - URI Argument - Cookie
  • 11. Live Demo: Apply A/B Testing with NGINX A/B testing with random client spliting. A/B testing with sticky route. Dynamic A/B Testing with multi-domain VSTECS (Thailand) Co.,Ltd. 11 A/B Testing with JWT
  • 12. Resources Git Repository of A/B testing with NGINX • https://github.com/supachai-j/ab-testing-with-nginx • Demo-1: A/B testing with random client spliting. • Demo-2: A/B testing with sticky route. • Demo-3: Dynamic A/B Testing with Multi-domain. • Demo-4: A/B Testing with JWT Getting Started with NGINX Guides • https://docs.nginx.com/nginx/admin-guide/installing-nginx/installing-nginx-docker/ • https://www.nginx.com/blog/performing-a-b-testing-nginx-plus • https://www.nginx.com/blog/dynamic-a-b-testing-with-nginx-plus • https://www.nginx.com/blog/authentication-content-based-routing-jwts-nginx-plus VSTECS (Thailand) Co.,Ltd. 12 NGINX Community Thailand.