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
31
A Whirlwind Tour of Infra
mhamrah
0
53
gRPC All The Things
mhamrah
0
340
Sailing With Spinnaker
mhamrah
0
48
Uber: Anomaly Detection At Scale
mhamrah
0
670
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
600
Intro to SPDY
mhamrah
0
260
Other Decks in Technology
See All in Technology
SAVEPOINT α版
savepoint
0
650
スタッフエンジニアの道: The Staff Engineer’s Path
snoozer05
PRO
43
14k
contenteditableと向き合う
kikuchikakeru
2
300
あなたの知らないiOS開発の世界
recruitengineers
PRO
3
120
自社サービスのための独自リリース版Redmine「RedMica」の取り組み
vividtone
0
1.1k
Oracle Database Backup Service:サービス概要のご紹介
oracle4engineer
PRO
0
4.1k
言葉は感情の近似値である。その感情と言葉の誤差を最小化しよう ~コミュニケーションにおけるアナログ/デジタル変換の課題に立ち向かう~
nktamago
0
130
サーバレスでモバイルアプリ開発! NTTコム「ビジネスdアプリ」のアーキテクチャ / The architecture of business d app
nttcom
12
230
Oracle Autonomous Database:サービス概要のご紹介
oracle4engineer
PRO
1
7k
どこよりも遅めなWinActor Ver.7.5.0 新機能紹介
tamai_63
0
180
DevRelの始め方
moongift
PRO
1
360
CRTO/CRTL/OSEPの比較・勉強法とAV/EDRの検知実験
chayakonanaika
1
1.1k
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
30
2.8k
Building Flexible Design Systems
yeseniaperezcruz
325
37k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Scaling GitHub
holman
458
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
23
1.7k
Designing on Purpose - Digital PM Summit 2013
jponch
113
6.8k
The Invisible Side of Design
smashingmag
295
50k
Speed Design
sergeychernyshev
22
430
Automating Front-end Workflow
addyosmani
1365
200k
Happy Clients
brianwarren
96
6.6k
Side Projects
sachag
451
42k
Into the Great Unknown - MozCon
thekraken
29
1.4k
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