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
4 years building services at peerTransfer
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Felipe Talavera
October 17, 2014
Programming
73
1
Share
4 years building services at peerTransfer
Felipe Talavera
October 17, 2014
More Decks by Felipe Talavera
See All by Felipe Talavera
web development with ruby
felipetalavera
0
120
infrastructure at peertransfer
felipetalavera
3
310
ruby + rails
felipetalavera
5
580
Other Decks in Programming
See All in Programming
t *testing.T は どこからやってくるの?
otakakot
1
700
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
620
Running Swift without an OS
kishikawakatsumi
0
850
JOAI2026 1st solution - heron0519 -
heron0519
0
140
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
380
Kingdom of the Machine
yui_knk
2
640
Making the RBS Parser Faster
soutaro
0
460
PHP で mp3 プレイヤーを実装しよう
m3m0r7
PRO
0
280
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
170
CursorとClaudeCodeとCodexとOpenCodeを実際に比較してみた
terisuke
1
480
Surviving Black Friday: 329 billion requests with Falcon!
ioquatix
0
580
JAWS-UG横浜 #100 祝・第100回スペシャルAWS は VPC レスの時代へ
maroon1st
0
160
Featured
See All Featured
The Curse of the Amulet
leimatthew05
1
11k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
810
The Cult of Friendly URLs
andyhume
79
6.8k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.6k
Building Applications with DynamoDB
mza
96
7k
[SF Ruby Conf 2025] Rails X
palkan
2
970
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
100
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
530
How to Talk to Developers About Accessibility
jct
2
180
My Coaching Mixtape
mlcsv
0
100
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
680
Transcript
4 years building services Felipe Talavera
A.K.A. Services vs Monoliths
"Microservices" - yet another new term on the crowded streets
of software architecture. http://martinfowler.com/articles/microservices.html -Martin Fowler
None
1B$ process +500 schools almost 4 years
0 sinatra 1 rails 0 daemons 0 libraries 1 server
November 2010!
None
0 sinatra 2 rails 1 daemons 0 libraries 2 servers
January 2011!
HTTP REST API’s! ! Async process with a message broker
None
App per git repo! ! Apps are deployed separately !
Infra as code
Issues
Features involving multiple apps ! One rails app failure affect
the other ! Complex monitoring/acceptance needed !
dependency resolution ! version tagging and deployment! ! handling performance
degradation Manual
! Error Handling cascading, trace, storm, retry
Infra on AWS June 2012!
http://martinfowler.com/bliki/MicroservicePrerequisites.html Rapid provisioning Basic Monitoring Rapid application deployment
4 sinatra 4 rails 4 daemons 3 libraries 6 servers
June 2012!
None
None
None
10 sinatra 4 rails 8 daemons 7 libraries 21 servers
October 2014!
teams around services
Accidental complexities
API consumers Auto generated consumer, ex: ActiveResource ! Cross app
testing, consumer mock mode ! Recording traffic, VCR approach
A/B testing across apps ! Feature flagging
None
40 sinatra 3 rails 15 daemons 20 libraries 40 servers
July 2016!
! Docker containers ! Consul ! Etcd ! Terraform Our
next steps:!
Modern alternatives !
! Hystrix/RxJava Latency and Fault Tolerance for Distributed Systems Java
lib runs in JVM languages, scala, clojure, etc… from netflix http://blog.josephwilk.net/clojure/building-clojure-services-at-scale.html
! Finagle Pipes-and-Filters meets Futures model. Thrift for RPC ZooKeeper
for Service Discovery from twitter Finatra Scala lib
! Zipkin A distributed tracing system
Apache Mesos Develop and run resource-efficient distributed systems ! !
Cluster manager that simplifies the complexity of running applications on a shared pool of servers.
Learned lessons! ! What things we would do differently?
Thanks!