Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Vom Monolithen zu Microservices - ein Erfahrung...
Search
Andreas Weigel
December 12, 2018
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Vom Monolithen zu Microservices - ein Erfahrungsbericht
Andreas Weigel
December 12, 2018
More Decks by Andreas Weigel
See All by Andreas Weigel
Observability in a microservice world
aendi
0
290
Featured
See All Featured
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
410
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
780
Become a Pro
speakerdeck
PRO
31
6.3k
Fireside Chat
paigeccino
43
4.1k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
310
Marketing to machines
jonoalderson
1
5.9k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Into the Great Unknown - MozCon
thekraken
41
2.8k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
67k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
7k
Transcript
None
3.500 DM-MÄRKTE 3.500 DM-MÄRKTE 1.900 Deutschland 1.600 Österreich & verbundene
Länder
1.200.000 APP INSTALLATIONEN 1.200.000 APP INSTALLATIONEN iOS & Android
1.500.000 COUPONING- 1.500.000 COUPONING- REQUESTS REQUESTS pro Tag
14 MICROSERVICES 14 MICROSERVICES bilden das Couponing-Backend
Entstehung Monolith Microservices bei dm Der erste PAC Microservice Lessons
Learned Ausblick Fazit
WARUM SIND WIR HIER? WARUM SIND WIR HIER?
None
AGILER ENTWICKLUNGSPROZESS AGILER ENTWICKLUNGSPROZESS Iterative Auslieferung Kontinuierlicher Feedbackzyklus Ausrichtung Produktvision
HOHER AUTOMATISIERUNGSGRAD HOHER AUTOMATISIERUNGSGRAD durch "neue" Technologien Spring Boot systemD
Docker Kubernetes
DAS TEAM DAS TEAM PAC PAC
None
None
SYSTEMKONTEXT SYSTEMKONTEXT
None
VORAUSSETZUNGEN VORAUSSETZUNGEN
None
None
MODULARISIERUNG MODULARISIERUNG
None
UND TÄGLICH GRÜSST... UND TÄGLICH GRÜSST... die Wartbarkeit die Erweiterbarkeit
Entstehung Monolith Microservices bei dm Der erste PAC Microservice Lessons
Learned Ausblick Fazit
DIE ERSTEN MICROSERVICES BEI DM DIE ERSTEN MICROSERVICES BEI DM
HOMEPAGE/SHOP HOMEPAGE/SHOP Startschuss der Microservice Architektur bei dm
2 MONOLITHEN 2 MONOLITHEN
SPRING CLOUD SPRING CLOUD Umsetzung der Microservice Architektur Patterns
SERVICE DISCOVERY SERVICE DISCOVERY
CLIENTSIDE LOADBALANCING CLIENTSIDE LOADBALANCING
API GATEWAY API GATEWAY
CIRCUITBREAKER CIRCUITBREAKER
None
EINE SCHLANKERE INFRASTRUKTUR EINE SCHLANKERE INFRASTRUKTUR
None
None
Entstehung Monolith Microservices bei dm Der erste PAC Microservice Lessons
Learned Ausblick Fazit
MICROSERVICES BEI PAC MICROSERVICES BEI PAC 10 MODULE 10 MODULE
Größe des Monolithen vor Migration
DM GLÜCKSKIND APP DM GLÜCKSKIND APP Erster Usecase für PAC
Microservice
None
MIGRATION DES MODULS MIGRATION DES MODULS
END 2 END TESTS END 2 END TESTS Geben Sicherheit…
sind aber selbst schwer zu maintainen
INFRASTRUKTUR INFRASTRUKTUR Mit 10 WTFs/Minute unterwegs
MICROSERVICES BEI PAC MICROSERVICES BEI PAC DER ERSTE MICROSERVICE DER
ERSTE MICROSERVICE STEHT STEHT
ABER… ABER… Man fühlt sich etwas wie im Blindflug
METRICS METRICS
None
ELK, ACTUATOR, TELEGRAF, ELK, ACTUATOR, TELEGRAF, INFLUXDB, GRAFANA INFLUXDB, GRAFANA
EINER IST KEINER EINER IST KEINER IMMER MEHR MICROSERVICES IMMER
MEHR MICROSERVICES ENTSTEHEN ENTSTEHEN
BEDEUTUNG DES MONOLITHEN BEDEUTUNG DES MONOLITHEN SINKT SINKT
None
FINETUNING FINETUNING
Entstehung Monolith Microservices bei dm Der erste PAC Microservice Lessons
Learned Ausblick Fazit
LESSONS LEARNED (TECH.) LESSONS LEARNED (TECH.) API GATEWAY PATTERN API
GATEWAY PATTERN
DEPENDENCY HELL DEPENDENCY HELL
408 408 Request Timeout
LESSONS LEARNED (ORG.) LESSONS LEARNED (ORG.) NEUES TEAM FÜR ONLINESHOP
NEUES TEAM FÜR ONLINESHOP
DEVOPS FÜR DEN BEREICH DEVOPS FÜR DEN BEREICH
DEVOPS KULTUR DEVOPS KULTUR
BENEFITS BENEFITS MEHR MACHT DEN DEVS MEHR MACHT DEN DEVS
UNABHÄNGIGE SKALIERUNG UNABHÄNGIGE SKALIERUNG
UNABHÄNGIGES DEPLOYMENT UNABHÄNGIGES DEPLOYMENT
PROBLEME SCHNELLER PROBLEME SCHNELLER LOKALISIERBAR LOKALISIERBAR
Entstehung Monolith Microservices bei dm Der erste PAC Microservice Lessons
Learned Ausblick Fazit
AUSBLICK AUSBLICK BUZZWORD BINGO BUZZWORD BINGO
DOCKER DOCKER
(PRIVATE) CLOUD (PRIVATE) CLOUD
EVENT-DRIVEN MICROSERVICES EVENT-DRIVEN MICROSERVICES
FAZIT FAZIT
None
Slides: https://synyx.github.io/monolith2microservices/