Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Microservices - The Naked Truth Of The Maintain...
Search
Jakub Kubryński
April 03, 2017
Programming
1
670
Microservices - The Naked Truth Of The Maintainability
Jakub Kubryński
April 03, 2017
Tweet
Share
More Decks by Jakub Kubryński
See All by Jakub Kubryński
Autonomous deployments in modern distributed systems
jkubrynski
1
110
Bulletproof communication in distributed systems
jkubrynski
0
470
JVM Workshop
jkubrynski
1
190
Engineering architecture
jkubrynski
0
770
Case study of the good enough architecture
jkubrynski
0
380
JPA - Beyond Copy-Paste
jkubrynski
3
1.5k
Other Decks in Programming
See All in Programming
CSC509 Lecture 11
javiergs
PRO
0
180
AWS IaCの注目アップデート 2024年10月版
konokenj
3
3.3k
受け取る人から提供する人になるということ
little_rubyist
0
230
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
910
ペアーズにおけるAmazon Bedrockを⽤いた障害対応⽀援 ⽣成AIツールの導⼊事例 @ 20241115配信AWSウェビナー登壇
fukubaka0825
6
1.9k
AWS Lambdaから始まった Serverlessの「熱」とキャリアパス / It started with AWS Lambda Serverless “fever” and career path
seike460
PRO
1
260
as(型アサーション)を書く前にできること
marokanatani
9
2.6k
リアーキテクチャxDDD 1年間の取り組みと進化
hsawaji
1
220
LLM生成文章の精度評価自動化とプロンプトチューニングの効率化について
layerx
PRO
2
190
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.1k
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
1.4k
Outline View in SwiftUI
1024jp
1
320
Featured
See All Featured
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
720
It's Worth the Effort
3n
183
27k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
Fireside Chat
paigeccino
34
3k
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
Bash Introduction
62gerente
608
210k
Transcript
@jkubrynski / kubrynski.com MICROSERVICES THE NAKED TRUTH OF THE MAINTAINABILITY
JAKUB KUBRYNSKI
[email protected]
/ @jkubrynski / kubrynski.com
$ WHOAMI DEVSKILLER CO-FOUNDER BOTTEGA TRAINER DEVOXX.PL PROGRAM COMMITTEE MEMBER
SPRING CLOUD CONTRACT CO-AUTHOR
Prawdziwego programistę poznaje się nie po tym, jak zaczyna, ale
jak utrzymuje.
HOW MICRO? 100 LOC? 1K LOC? 10K LOC? 100K LOC?
1K LOC AVERAGE ENTERPRISE APP == 500K LOC 1 ENTEPRISE
APP == 500 MICROSERVICES
BUSINESS ORIENTED FOR TECHNICAL STUFF WE HAVE LIBS
AUTONOMY
INDEPENDENCE P = P(1) * P(2) * ... * P(N)
99.8 * 99.8 * 99.8 = 99.4
99.9 ^ 10 = 99.0
AVAILABILITY VS DOWNTIME 9 9 . 9 9 9 %
35d 4d 8h 50m 5m per year 2.5h 14m 1.5m 8s 0.8s per day
DEPTH * * SYNCHRONOUS
QUALITY
LOOSE COUPLING OVER CANONICAL MODEL
AVOID END-TO-END TESTS
VERIFY CONTRACTS IF: A == C && B == C
THEN: A == B
DESIGN FOR FAILURE
RETRY
CIRCUIT BREAKER KEEP CALM AND FALLBACK
FIX AS ASAP AS POSSIBLE
PERFORMANCE
PERFORMANCE TESTS EXPENSIVE INACCURATE TRICKY
PRODUCTION TRAFFIC IS USUALLY ON PRODUCTION
MONITORING APPLICATION PERFORMANCE MANAGEMENT
ANSCOMBE'S QUARTET
PERCENTILES P50, P90, P95, P99
P?? P95? P99? P99.5?
10 REQUESTS PER PAGE P90: 100% slow page views P95:
50% slow page views P99: 10% slow page views
P99 10 PAGES PER SESSION MEANS 100% FRUSTRATED USERS
MONITOR P99.9 OR P99.95
AUTOMATION * * AS A CODE
PIPELINES AS A CODE
INFRASTRUCTURE AS A CODE
CONFIGURATION AS A CODE
None
QUESTIONS?
THANKS
"Have no fear of perfection - you'll never reach it."
― Salvador Dalí