SlideShare a Scribd company logo
Continuous Delivery in a microservices
environment
A success story
Luca Mazzaferro
luca.mazzaferro@holidaycheck.com
Outline:
•  About me
•  About HolidayCheck
•  CD and micro-services at
HolidayCheck
▪  I was born in Rome where I spent most of my
life until 2013 when I moved to Munich.
▪  Former physicist, member of ATLAS
experiment @CERN during the roaring master
degree and Ph.D. years. Mainly focusing in data
analysis and grid computing.
▪  In June 2015, I sold my soul to the business,
leaving the public research for happily joining
HolidayCheck as devops engineer
About Me
About HolidayCheck
1
Holidaycheck means…
Holidays and travel bookings
1
Trustable reviews
Holidaycheck means…
Holidays and travel bookings
2
1
Trustable reviews
Holidaycheck means…
Finding the best price
2
3
Holidays and travel bookings
1
Trustable reviews
Holidaycheck means…
… and much more.
2
3
4
Finding the best price
Holidays and travel bookings
Hotels:
659.000
Dests:
195 Countries
52880 Towns
Reviews:
6.900.000
Photos:
7.470.000
Visit/Month:
13.66 Million
Tour operators:
100
About HolidayCheck
Some numbers
HolidayCheck is the largest review, booking and price
comparing portal for travel and holidays in German language.
CD and micro-services at HolidayCheck
A bit of History
Pre HC microservices era:
Not so much time ago…
The Deployment Day
Pre HC micro-services era:
Not so much time ago…
ABC
1 Day1 Week2 Weeks
C
B A
ABC
Development
Collect
&
Merge
Test & Deploy
Pre HC micro-services era:
Not so much time ago…
Results:
●  Low deployment rate
●  Frequent full roll backs
●  Many inter teams
dependencies
●  Hard team planning
●  High stress
Pre HC micro-services era:
Not so much time ago…
The Elephant Release
Pre HC micro-services era:
Not so much time ago…
Dev
Test
Merge
Deploy
Fback
Pre HC micro-services era:
Not so much time ago…
Results:
●  Low deployments rate
●  Teams queued
●  Inter teams dependencies
●  Still monolithic application
Pre HC micro-services era:
Not so much time ago…
Continuous Delivery is the ability to get changes of all
types—including new features, configuration changes, bug
fixes and experiments—into production, or into the hands
of users, safely and quickly in a sustainable way.*
A bit better but still far away from here:
* continuousdelivery.com
CD and micro-services at HolidayCheck
Our solution
The migration to micro-services
The ingredients
●  Migration plan
●  New teams structure and responsibilities
●  New technology stack
1st Ingredient:
Migration plan
The 1st ingredient
1.  Slow migration: from mobile to desktop
2.  One section after another: less traffic to higher
3.  Getting rid of old legacy software (when possible)
Migration Plan:
2nd Ingredient:
New teams structure &
responsibilities
•  Preferred small cross functional teams (5-6 people)
•  Devops Culture adopted via in-team devops engineer
•  Teams responsible for their own products (microservices)
•  Inter-teams dependencies removed and autonomy enforced
2nd ingredient
PO/TO SM Devs Devops
Eng.
Ops Team
Teams structure & reposibilities
Organiza(ons	which	design	systems	...	are	constrained	to	produce	designs	which	are	
copies	of	the	communica(on	structures	of	these	organiza(ons	[M.	Conway]	
*
3rd Ingredient:
New technology stack
-  The Dust project
-  The Alerts and
Monitoring
-  CD at HC
The new technology stack
The Dust project
Creation of Dust Team (Ops + Dev):
•  Setup the new infrastructure
focused to run micro-services
•  Develop specific tools for micro-
services deployments
•  Support teams for services
“containerization”
Dust
Environment
The new technology stack
The Dust project
Dust
Environment
Main advantages:
•  Easily scalable
•  Ready for Continuous
Deployments
•  Services easy to monitor
•  Isolated environment
•  Enforce team autonomy
3rd Ingredient:
New technology stack
-  The Dust project
-  The Alerts and
Monitoring
-  CD at HC
The new technology stack
•  Metric basedAlerts
•  Logs
•  System metrics
Default
Monitoring
•  Teams defined
dashboards
Custom
Monitoring
New approach to monitoring and alerting
•  Required for each service
•  Based on the user experience
(mainly error rate and response
time)
•  Customizable by the teams
•  Automatically deployed
Alerts
You can’t survive without
Alerts
A simple overview
A
B C
DUST
NGINX metrics
Customizable Metrics
Alerts defined on user
experience:
-  Error rate (5XX, 4XX)
-  Response Time
On Call
Duty
Teams
Traffic
•  Automatically deployed
•  Based on logs and metrics
•  Useful for
debugging
criticalities discovery
performances issue discovery
•  Accessible by devs and ops.
Default Monitoring
Makes your life easier
•  One centralize system for
all the logs
•  Search and visualize
•  No configuration needed
•  Easy to integrate in GCE
Default Monitoring
Logs
Servers
Microservices
GCE
•  Grafana shows all the
metrics collected by
Prometheus
•  Custom metrics
•  Custom dashboards
Default Monitoring
Custom Metrics
Servers
Microservices
GCE
Default Monitoring
Custom Metrics
NGINX Grafana dashboard
•  External service mainly used
by micro-services
•  Error analysis
•  Services maps
•  Metrics monitoring
Default Monitoring
NewRelic
Servers
Microservices
GCE
Default Monitoring
NewRelic Services Maps
Services Maps
•  Team defined metrics
and dashboards
•  Freedom to chose tools
and technologies
•  Mainly for service quality
and performances
monitoring
•  Data & Business analysis
Custom Monitoring
Can drive business decisions
3rd Ingredient:
New technology stack
-  The Dust Project
-  The Alerts and
Monitoring
-  CD at HC
1 Develop, commit and push
Continuous Delivery @HolidayCheck
Our Vision
Staging
Live
Team
Server
1
2
3
4
Build
Basic tests (e.g. Unit, Reg.)
Deploy on staging env
2
3
Sophisticated Tests (integr.,
accuracy)
4
Deploy in production
Smoke tests
* Continuous Monitoring
MSs/Containers
100
Teams
12
Deployment Rate
Daily/Weekly
Main languages:
Scala/Go/
ReactJS
Main Backend Techs
ElasticSearch/
MongoDB/Kafka
HC Infrastructure in Numbers
Currently we are at the end of a migration phase in Google Cloud Engine.
Conclusions
The adoption of microservices
enforced team autonomy, enabled
the Continuous Delivery and
increased the deployment rate.
The entire infrastructure is more
stable, reliable, maintainable
and scalable
A smooth migration in Google
has been helped only by the
previous micro-services
adoption.
Conclusions
The adoption of microservices
enforced team autonomy, enabled
the Continuous Delivery and
increased the deployment rate.
The entire infrastructure is more
stable, reliable, maintainable
and scalable
A smooth migration in Google
has been helped only by the
previous micro-services
adoption.
www.holidaycheck.de
HolidayCheck Solutions
Neumarkter Str. 61 | D- 81673 München
Luca Mazzaferro
DevOps Engineer
T: Tel +41 (0) 71 686 9000
luca.mazzaferro@holidaycheck.com
Contact.
THANK YOU
FOR YOUR ATTENTION!
Questions?

More Related Content

Viewers also liked

Acts of being in proxies for prints: People in the Catalogue of Political and...
Acts of being in proxies for prints: People in the Catalogue of Political and...Acts of being in proxies for prints: People in the Catalogue of Political and...
Acts of being in proxies for prints: People in the Catalogue of Political and...
James Baker
 
Gdz ukr mova_test
Gdz ukr mova_testGdz ukr mova_test
Gdz ukr mova_test
Lucky Alex
 
Microservices in Production
Microservices in ProductionMicroservices in Production
Microservices in Production
Damien PLARD
 
[SLIDE FACTORY] [S24] Phan Duy Thanh - Bài tốt nghiệp
[SLIDE FACTORY] [S24] Phan Duy Thanh - Bài tốt nghiệp[SLIDE FACTORY] [S24] Phan Duy Thanh - Bài tốt nghiệp
[SLIDE FACTORY] [S24] Phan Duy Thanh - Bài tốt nghiệp
SLIDE FACTORY
 
[SLIDE FACTORY] [S23] Phạm Ngân Hà - Bài tốt nghiệp
[SLIDE FACTORY] [S23] Phạm Ngân Hà - Bài tốt nghiệp[SLIDE FACTORY] [S23] Phạm Ngân Hà - Bài tốt nghiệp
[SLIDE FACTORY] [S23] Phạm Ngân Hà - Bài tốt nghiệp
SLIDE FACTORY
 
Swots for final idea pitch
Swots for final idea pitchSwots for final idea pitch
Swots for final idea pitch
princessmays1
 
1b) A2 Media - Genre Analysis
1b) A2 Media - Genre Analysis1b) A2 Media - Genre Analysis
1b) A2 Media - Genre Analysis
Katie Hughes
 
Презентація Плазуни
Презентація ПлазуниПрезентація Плазуни
Презентація Плазуни
Svetik Svetik
 
Der perfekte Microservice
Der perfekte MicroserviceDer perfekte Microservice
Der perfekte Microservice
OPEN KNOWLEDGE GmbH
 
Destination kenya profile
Destination kenya profileDestination kenya profile
Destination kenya profile
Destination Kenya
 
Aiim - AM09 - "Share a coke 2014" campaign
Aiim - AM09 - "Share a coke 2014" campaignAiim - AM09 - "Share a coke 2014" campaign
Aiim - AM09 - "Share a coke 2014" campaign
Thảo Lý
 
Tema 4
Tema 4Tema 4

Viewers also liked (12)

Acts of being in proxies for prints: People in the Catalogue of Political and...
Acts of being in proxies for prints: People in the Catalogue of Political and...Acts of being in proxies for prints: People in the Catalogue of Political and...
Acts of being in proxies for prints: People in the Catalogue of Political and...
 
Gdz ukr mova_test
Gdz ukr mova_testGdz ukr mova_test
Gdz ukr mova_test
 
Microservices in Production
Microservices in ProductionMicroservices in Production
Microservices in Production
 
[SLIDE FACTORY] [S24] Phan Duy Thanh - Bài tốt nghiệp
[SLIDE FACTORY] [S24] Phan Duy Thanh - Bài tốt nghiệp[SLIDE FACTORY] [S24] Phan Duy Thanh - Bài tốt nghiệp
[SLIDE FACTORY] [S24] Phan Duy Thanh - Bài tốt nghiệp
 
[SLIDE FACTORY] [S23] Phạm Ngân Hà - Bài tốt nghiệp
[SLIDE FACTORY] [S23] Phạm Ngân Hà - Bài tốt nghiệp[SLIDE FACTORY] [S23] Phạm Ngân Hà - Bài tốt nghiệp
[SLIDE FACTORY] [S23] Phạm Ngân Hà - Bài tốt nghiệp
 
Swots for final idea pitch
Swots for final idea pitchSwots for final idea pitch
Swots for final idea pitch
 
1b) A2 Media - Genre Analysis
1b) A2 Media - Genre Analysis1b) A2 Media - Genre Analysis
1b) A2 Media - Genre Analysis
 
Презентація Плазуни
Презентація ПлазуниПрезентація Плазуни
Презентація Плазуни
 
Der perfekte Microservice
Der perfekte MicroserviceDer perfekte Microservice
Der perfekte Microservice
 
Destination kenya profile
Destination kenya profileDestination kenya profile
Destination kenya profile
 
Aiim - AM09 - "Share a coke 2014" campaign
Aiim - AM09 - "Share a coke 2014" campaignAiim - AM09 - "Share a coke 2014" campaign
Aiim - AM09 - "Share a coke 2014" campaign
 
Tema 4
Tema 4Tema 4
Tema 4
 

Similar to Microservice and Continuos Delivery

Continuos Delivery in a Microservices environment
Continuos Delivery in a Microservices environment Continuos Delivery in a Microservices environment
Continuos Delivery in a Microservices environment
Luca Mazzaferro
 
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
TriNimbus
 
DevOps Operations Challenges
DevOps Operations ChallengesDevOps Operations Challenges
DevOps Operations Challenges
Vijaya K
 
Leveraging Analytics for DevOps
Leveraging Analytics for DevOpsLeveraging Analytics for DevOps
Leveraging Analytics for DevOps
Michael Floyd
 
Code to Cloud: Three Trends for Faster, Safer Continuous Delivery
Code to Cloud: Three Trends for Faster, Safer Continuous DeliveryCode to Cloud: Three Trends for Faster, Safer Continuous Delivery
Code to Cloud: Three Trends for Faster, Safer Continuous Delivery
VMware Tanzu
 
How to choose tools for DevOps and Continuous Delivery - DevOps Manchester me...
How to choose tools for DevOps and Continuous Delivery - DevOps Manchester me...How to choose tools for DevOps and Continuous Delivery - DevOps Manchester me...
How to choose tools for DevOps and Continuous Delivery - DevOps Manchester me...
Matthew Skelton
 
Service Mesh Talk for CTO Forum
Service Mesh Talk for CTO ForumService Mesh Talk for CTO Forum
Service Mesh Talk for CTO Forum
Rick Hightower
 
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
Amazon Web Services
 
Custom Software Development
Custom Software DevelopmentCustom Software Development
Custom Software Development
Simerjeet Singh
 
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
Phuong Mai Nguyen
 
Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...
Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...
Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...
XebiaLabs
 
Monitoring Containerized Micro-Services In Azure
Monitoring Containerized Micro-Services In AzureMonitoring Containerized Micro-Services In Azure
Monitoring Containerized Micro-Services In Azure
Alex Bulankou
 
DevOps in Practice
DevOps in PracticeDevOps in Practice
DevOps in Practice
Derek Chen
 
Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]
Dynatrace
 
Cloud Governance & DevOps: Must-have Tools on Your Journey to Azure Cloud
Cloud Governance & DevOps: Must-have Tools on Your Journey to Azure CloudCloud Governance & DevOps: Must-have Tools on Your Journey to Azure Cloud
Cloud Governance & DevOps: Must-have Tools on Your Journey to Azure Cloud
Predica Group
 
Cloud & Telecom Expense Management
Cloud & Telecom Expense Management Cloud & Telecom Expense Management
Cloud & Telecom Expense Management
Sergej Polovnikov
 
Navigator Systems ltd HireTrack NX questions
Navigator Systems ltd   HireTrack NX questionsNavigator Systems ltd   HireTrack NX questions
Navigator Systems ltd HireTrack NX questions
David Rose
 
GN42_SA2_JRA3 kick off_201612071234.pptx
GN42_SA2_JRA3 kick off_201612071234.pptxGN42_SA2_JRA3 kick off_201612071234.pptx
GN42_SA2_JRA3 kick off_201612071234.pptx
WorldTrade3
 
Case study: How Cozy Cloud monitors every layer of its activity using OVH Met...
Case study: How Cozy Cloud monitors every layer of its activity using OVH Met...Case study: How Cozy Cloud monitors every layer of its activity using OVH Met...
Case study: How Cozy Cloud monitors every layer of its activity using OVH Met...
OVHcloud
 
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
DevOps.com
 

Similar to Microservice and Continuos Delivery (20)

Continuos Delivery in a Microservices environment
Continuos Delivery in a Microservices environment Continuos Delivery in a Microservices environment
Continuos Delivery in a Microservices environment
 
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
 
DevOps Operations Challenges
DevOps Operations ChallengesDevOps Operations Challenges
DevOps Operations Challenges
 
Leveraging Analytics for DevOps
Leveraging Analytics for DevOpsLeveraging Analytics for DevOps
Leveraging Analytics for DevOps
 
Code to Cloud: Three Trends for Faster, Safer Continuous Delivery
Code to Cloud: Three Trends for Faster, Safer Continuous DeliveryCode to Cloud: Three Trends for Faster, Safer Continuous Delivery
Code to Cloud: Three Trends for Faster, Safer Continuous Delivery
 
How to choose tools for DevOps and Continuous Delivery - DevOps Manchester me...
How to choose tools for DevOps and Continuous Delivery - DevOps Manchester me...How to choose tools for DevOps and Continuous Delivery - DevOps Manchester me...
How to choose tools for DevOps and Continuous Delivery - DevOps Manchester me...
 
Service Mesh Talk for CTO Forum
Service Mesh Talk for CTO ForumService Mesh Talk for CTO Forum
Service Mesh Talk for CTO Forum
 
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
 
Custom Software Development
Custom Software DevelopmentCustom Software Development
Custom Software Development
 
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
 
Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...
Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...
Building a Software Chain of Custody: A Guide for CTOs, CIOs, and Enterprise ...
 
Monitoring Containerized Micro-Services In Azure
Monitoring Containerized Micro-Services In AzureMonitoring Containerized Micro-Services In Azure
Monitoring Containerized Micro-Services In Azure
 
DevOps in Practice
DevOps in PracticeDevOps in Practice
DevOps in Practice
 
Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]
 
Cloud Governance & DevOps: Must-have Tools on Your Journey to Azure Cloud
Cloud Governance & DevOps: Must-have Tools on Your Journey to Azure CloudCloud Governance & DevOps: Must-have Tools on Your Journey to Azure Cloud
Cloud Governance & DevOps: Must-have Tools on Your Journey to Azure Cloud
 
Cloud & Telecom Expense Management
Cloud & Telecom Expense Management Cloud & Telecom Expense Management
Cloud & Telecom Expense Management
 
Navigator Systems ltd HireTrack NX questions
Navigator Systems ltd   HireTrack NX questionsNavigator Systems ltd   HireTrack NX questions
Navigator Systems ltd HireTrack NX questions
 
GN42_SA2_JRA3 kick off_201612071234.pptx
GN42_SA2_JRA3 kick off_201612071234.pptxGN42_SA2_JRA3 kick off_201612071234.pptx
GN42_SA2_JRA3 kick off_201612071234.pptx
 
Case study: How Cozy Cloud monitors every layer of its activity using OVH Met...
Case study: How Cozy Cloud monitors every layer of its activity using OVH Met...Case study: How Cozy Cloud monitors every layer of its activity using OVH Met...
Case study: How Cozy Cloud monitors every layer of its activity using OVH Met...
 
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
 

Recently uploaded

The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024
Yara Milbes
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
kalichargn70th171
 
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptxMigration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
ervikas4
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
VALiNTRY360
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
Preparing Non - Technical Founders for Engaging a Tech Agency
Preparing Non - Technical Founders for Engaging  a  Tech AgencyPreparing Non - Technical Founders for Engaging  a  Tech Agency
Preparing Non - Technical Founders for Engaging a Tech Agency
ISH Technologies
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
XfilesPro
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
Karya Keeper
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
Patrick Weigel
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
dakas1
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
Quickdice ERP
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSISDECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
Tier1 app
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
Remote DBA Services
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
Alina Yurenko
 

Recently uploaded (20)

The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024The Rising Future of CPaaS in the Middle East 2024
The Rising Future of CPaaS in the Middle East 2024
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...
 
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptxMigration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
 
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfTop Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdf
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
Preparing Non - Technical Founders for Engaging a Tech Agency
Preparing Non - Technical Founders for Engaging  a  Tech AgencyPreparing Non - Technical Founders for Engaging  a  Tech Agency
Preparing Non - Technical Founders for Engaging a Tech Agency
 
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
Everything You Need to Know About X-Sign: The eSign Functionality of XfilesPr...
 
Project Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdfProject Management: The Role of Project Dashboards.pdf
Project Management: The Role of Project Dashboards.pdf
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
WWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders AustinWWDC 2024 Keynote Review: For CocoaCoders Austin
WWDC 2024 Keynote Review: For CocoaCoders Austin
 
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
一比一原版(UMN毕业证)明尼苏达大学毕业证如何办理
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSISDECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSIS
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 
Oracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptxOracle 23c New Features For DBAs and Developers.pptx
Oracle 23c New Features For DBAs and Developers.pptx
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
All you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVMAll you need to know about Spring Boot and GraalVM
All you need to know about Spring Boot and GraalVM
 

Microservice and Continuos Delivery

  • 1. Continuous Delivery in a microservices environment A success story Luca Mazzaferro luca.mazzaferro@holidaycheck.com
  • 2. Outline: •  About me •  About HolidayCheck •  CD and micro-services at HolidayCheck
  • 3. ▪  I was born in Rome where I spent most of my life until 2013 when I moved to Munich. ▪  Former physicist, member of ATLAS experiment @CERN during the roaring master degree and Ph.D. years. Mainly focusing in data analysis and grid computing. ▪  In June 2015, I sold my soul to the business, leaving the public research for happily joining HolidayCheck as devops engineer About Me
  • 7. 1 Trustable reviews Holidaycheck means… Finding the best price 2 3 Holidays and travel bookings
  • 8. 1 Trustable reviews Holidaycheck means… … and much more. 2 3 4 Finding the best price Holidays and travel bookings
  • 9. Hotels: 659.000 Dests: 195 Countries 52880 Towns Reviews: 6.900.000 Photos: 7.470.000 Visit/Month: 13.66 Million Tour operators: 100 About HolidayCheck Some numbers HolidayCheck is the largest review, booking and price comparing portal for travel and holidays in German language.
  • 10. CD and micro-services at HolidayCheck A bit of History
  • 11. Pre HC microservices era: Not so much time ago… The Deployment Day
  • 12. Pre HC micro-services era: Not so much time ago… ABC 1 Day1 Week2 Weeks C B A ABC Development Collect & Merge Test & Deploy
  • 13. Pre HC micro-services era: Not so much time ago… Results: ●  Low deployment rate ●  Frequent full roll backs ●  Many inter teams dependencies ●  Hard team planning ●  High stress
  • 14. Pre HC micro-services era: Not so much time ago… The Elephant Release
  • 15. Pre HC micro-services era: Not so much time ago… Dev Test Merge Deploy Fback
  • 16. Pre HC micro-services era: Not so much time ago… Results: ●  Low deployments rate ●  Teams queued ●  Inter teams dependencies ●  Still monolithic application
  • 17. Pre HC micro-services era: Not so much time ago… Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug fixes and experiments—into production, or into the hands of users, safely and quickly in a sustainable way.* A bit better but still far away from here: * continuousdelivery.com
  • 18. CD and micro-services at HolidayCheck Our solution
  • 19. The migration to micro-services The ingredients ●  Migration plan ●  New teams structure and responsibilities ●  New technology stack
  • 21. The 1st ingredient 1.  Slow migration: from mobile to desktop 2.  One section after another: less traffic to higher 3.  Getting rid of old legacy software (when possible) Migration Plan:
  • 22. 2nd Ingredient: New teams structure & responsibilities
  • 23. •  Preferred small cross functional teams (5-6 people) •  Devops Culture adopted via in-team devops engineer •  Teams responsible for their own products (microservices) •  Inter-teams dependencies removed and autonomy enforced 2nd ingredient PO/TO SM Devs Devops Eng. Ops Team Teams structure & reposibilities Organiza(ons which design systems ... are constrained to produce designs which are copies of the communica(on structures of these organiza(ons [M. Conway] *
  • 24. 3rd Ingredient: New technology stack -  The Dust project -  The Alerts and Monitoring -  CD at HC
  • 25. The new technology stack The Dust project Creation of Dust Team (Ops + Dev): •  Setup the new infrastructure focused to run micro-services •  Develop specific tools for micro- services deployments •  Support teams for services “containerization” Dust Environment
  • 26. The new technology stack The Dust project Dust Environment Main advantages: •  Easily scalable •  Ready for Continuous Deployments •  Services easy to monitor •  Isolated environment •  Enforce team autonomy
  • 27. 3rd Ingredient: New technology stack -  The Dust project -  The Alerts and Monitoring -  CD at HC
  • 28. The new technology stack •  Metric basedAlerts •  Logs •  System metrics Default Monitoring •  Teams defined dashboards Custom Monitoring New approach to monitoring and alerting
  • 29. •  Required for each service •  Based on the user experience (mainly error rate and response time) •  Customizable by the teams •  Automatically deployed Alerts You can’t survive without
  • 30. Alerts A simple overview A B C DUST NGINX metrics Customizable Metrics Alerts defined on user experience: -  Error rate (5XX, 4XX) -  Response Time On Call Duty Teams Traffic
  • 31. •  Automatically deployed •  Based on logs and metrics •  Useful for debugging criticalities discovery performances issue discovery •  Accessible by devs and ops. Default Monitoring Makes your life easier
  • 32. •  One centralize system for all the logs •  Search and visualize •  No configuration needed •  Easy to integrate in GCE Default Monitoring Logs Servers Microservices GCE
  • 33. •  Grafana shows all the metrics collected by Prometheus •  Custom metrics •  Custom dashboards Default Monitoring Custom Metrics Servers Microservices GCE
  • 35. •  External service mainly used by micro-services •  Error analysis •  Services maps •  Metrics monitoring Default Monitoring NewRelic Servers Microservices GCE
  • 37. •  Team defined metrics and dashboards •  Freedom to chose tools and technologies •  Mainly for service quality and performances monitoring •  Data & Business analysis Custom Monitoring Can drive business decisions
  • 38. 3rd Ingredient: New technology stack -  The Dust Project -  The Alerts and Monitoring -  CD at HC
  • 39. 1 Develop, commit and push Continuous Delivery @HolidayCheck Our Vision Staging Live Team Server 1 2 3 4 Build Basic tests (e.g. Unit, Reg.) Deploy on staging env 2 3 Sophisticated Tests (integr., accuracy) 4 Deploy in production Smoke tests * Continuous Monitoring
  • 40. MSs/Containers 100 Teams 12 Deployment Rate Daily/Weekly Main languages: Scala/Go/ ReactJS Main Backend Techs ElasticSearch/ MongoDB/Kafka HC Infrastructure in Numbers Currently we are at the end of a migration phase in Google Cloud Engine.
  • 41. Conclusions The adoption of microservices enforced team autonomy, enabled the Continuous Delivery and increased the deployment rate. The entire infrastructure is more stable, reliable, maintainable and scalable A smooth migration in Google has been helped only by the previous micro-services adoption.
  • 42. Conclusions The adoption of microservices enforced team autonomy, enabled the Continuous Delivery and increased the deployment rate. The entire infrastructure is more stable, reliable, maintainable and scalable A smooth migration in Google has been helped only by the previous micro-services adoption.
  • 43. www.holidaycheck.de HolidayCheck Solutions Neumarkter Str. 61 | D- 81673 München Luca Mazzaferro DevOps Engineer T: Tel +41 (0) 71 686 9000 luca.mazzaferro@holidaycheck.com Contact.
  • 44. THANK YOU FOR YOUR ATTENTION! Questions?