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
Frankenstein's Microservices
Search
Michael Hamrah
October 10, 2017
Technology
1
30
Frankenstein's Microservices
How to create a healthy microservice organization
Michael Hamrah
October 10, 2017
Tweet
Share
More Decks by Michael Hamrah
See All by Michael Hamrah
Growing Up With AWS
mhamrah
0
33
A Whirlwind Tour of Infra
mhamrah
0
55
gRPC All The Things
mhamrah
0
350
Sailing With Spinnaker
mhamrah
0
49
Uber: Anomaly Detection At Scale
mhamrah
0
700
The New Enterprise: RabbitMq, Akka and AWS at Getty Images
mhamrah
5
1.7k
Clean Code
mhamrah
0
320
Things to Know About Web Performance
mhamrah
2
630
Intro to SPDY
mhamrah
0
280
Other Decks in Technology
See All in Technology
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
0
330
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
270
【re:Invent 2024 アプデ】 Prompt Routing の紹介
champ
0
140
How to be an AWS Community Builder | 君もAWS Community Builderになろう!〜2024 冬 CB募集直前対策編?!〜
coosuke
PRO
2
2.8k
WACATE2024冬セッション資料(ユーザビリティ)
scarletplover
0
190
NilAway による静的解析で「10 億ドル」を節約する #kyotogo / Kyoto Go 56th
ytaka23
3
370
OpenShift Virtualizationのネットワーク構成を真剣に考えてみた/OpenShift Virtualization's Network Configuration
tnk4on
0
130
UI State設計とテスト方針
rmakiyama
2
300
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
150
サーバレスアプリ開発者向けアップデートをキャッチアップしてきた #AWSreInvent #regrowth_fuk
drumnistnakano
0
190
KubeCon NA 2024 Recap / Running WebAssembly (Wasm) Workloads Side-by-Side with Container Workloads
z63d
1
240
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
150
Featured
See All Featured
The Language of Interfaces
destraynor
154
24k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
Practical Orchestrator
shlominoach
186
10k
Designing Experiences People Love
moore
138
23k
Code Reviewing Like a Champion
maltzj
520
39k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Six Lessons from altMBA
skipperchong
27
3.5k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
1 Frankenstein Microservices Michael Hamrah @mhamrah / Chief Architect @NamelyHR
None
None
https://segment.com/blog/goodbye-microservices/ https://news.ycombinator.com/item?id=14415485
Transportation As Reliable As Running Water
‘Microservices’ is not an architecture
Services Power Products Infrastructure Powers Platform
Owns Data and Function Prevent Coupling Creates Opportunity Has an
SLO What is a Service?
Core Dependencies Frameworks Focus Here Help You Not Your App
None
What’s in a Platform?
Ownership
Pick a Serialization + Transport We ♥ gRPC
$ docker run -v `pwd`:/defs \ namely/gen-grpc-gateway -f todos.proto -s
Todos $ docker build -t todos-gateway gen/grpc-gateway rpc UpdateTodo (UpdateTodoRequest) returns (Todo ) { option (google.api.http) = { patch: "/todos/{todo.id}" body: "todo" }; } grpc-gateway gRPC HTTP Call
Make Integration Easy
Deployments Most outages occur from a bad deploy • How
is it running? • Who deployed what? • How much traffic? • Is it stable? • Can you rollback?
Pipeliner + Estuary https://github.com/namely/k8s-pipeliner Pipeliner is a simple yaml configuration
for Spinnaker. Estuary automagically applies pipelines to Spinnaker. Single-purpose composable tools are key for any SRE team.
Never Coordinate Deployments
Service Mack Service Lack Service Pack Service Discovery and Traffic
Management Service A Service B Service C Service Pack Service Lack Service Mack 300ms Timeout x 3 300ms Timeout x 3 Deadline 400ms Budget 20% Deadline 200ms Budget 20%
None
None
Live vs Background Processing Orders Analytics Shipments Oldest Create Order
Order Created Order Created: Pixel Order Created: iPhone
None
None
Chaos Engineering Putting Failure First
None
Build A Platform • Make DevEx great • Ownership is
a feature • Observability is a feature • Deployments are a feature • Traffic Management is a feature • Standards are important but not absolute
Know Your Tools
The End