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
Micro Services
Search
Will Hamill
March 13, 2014
Programming
1
110
Micro Services
Presentation given at Codeslice event on micro-services.
Will Hamill
March 13, 2014
Tweet
Share
More Decks by Will Hamill
See All by Will Hamill
Understanding Tech Strategy with Wardley Maps
willhamill
1
300
Splitting the Monolith
willhamill
0
300
Making Yourself Redundant
willhamill
0
69
Agile Antipatterns
willhamill
0
110
Building your Technical Profile
willhamill
0
47
Agile Architecture
willhamill
0
120
Agile 101
willhamill
4
200
Other Decks in Programming
See All in Programming
PRレビューのお供にDanger
stoticdev
1
240
未経験でSRE、はじめました! 組織を支える役割と軌跡
curekoshimizu
1
170
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
260
kintone開発を効率化するためにチームで試した施策とその結果を大放出!
oguemon
0
170
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
710
DevNexus - Create AI Infused Java Apps with LangChain4j
kdubois
0
100
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
14
4.7k
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
390
はじめての Go * WASM *OCR
sgash708
1
110
DRFを少しずつ オニオンアーキテクチャに寄せていく DjangoCongress JP 2025
nealle
2
280
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
1.1k
iOSでQRコード生成奮闘記
ktcryomm
2
110
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
260
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
Visualization
eitanlees
146
15k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
GitHub's CSS Performance
jonrohan
1030
460k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Agile that works and the tools we love
rasmusluckow
328
21k
Transcript
μServices { } March 2014 Will Hamill
DISCLAIMER: I am not an expert We are working (somewhat)
in this direction on some projects But this is based mostly on content from QCon London 2014
Applications are getting larger
Services are getting smaller
Services have been getting smaller for some time
Monolithic
Layered
Service-Oriented
Micro-Services
How?
A micro-service typically does only one thing User Authentication and
Role Based Authorisation Service User Authentication Role Based Authorisation
Anatomy of a micro service HTTP Logic Monitoring Storage
Techs: no hard and fast rules Simpler, lighter, self-contained services
need simpler and lighter technologies
None
Why?
Simplicity (at the service level)
3,000 LOC vs 200 LOC 100 LOC 500 LOC 400
LOC 200 LOC
Scale (distribute load and apps across machines)
Scaling the monolith
Scaling the monolith
Scaling the monolith …
Scaling micro-services
Scaling micro-services
Scaling micro-services
Scaling micro-services …
Scale 2: Scale Harder (many teams one on project)
Division of labour
Division of labour
Responding to change (decoupling delivery)
Release Schedule Every 6 months
Every 2 weeks Every week Every 4 weeks About every
4 days
Fault tolerance (fault acceptance)
Fragile Robust Antifragile
Who?
Netflix Twitter Amazon Yammer MailOnline
Not Quite There Yet
BandwagonDB
DRY-ed Out “core”
Service-Oriented Monolith
Difficulties
Testing everything is harder (but testing services is easier)
Fast, automated deployment and application monitoring are super-important
Versioning can be tricky www.semver.org
Conway’s Law
This Is New
This is an emerging approach Find which tradeoffs work best
for your particular situation
“It depends” ¯\_(ツ)_/¯
Further Reading http://www.infoq.com/presentations/Micro-Services http://vimeo.com/user22258446/review/79288222/cbb24b224c http://yobriefca.se/blog/2013/04/29/micro-service-architecture/ http://martinfowler.com/articles/microservices.html http://davidmorgantini.blogspot.co.uk/2013/08/micro-services- introduction.html http://qconlondon.com/dl/qcon-london-2014/slides/ AdrianCockcroft_MigratingToMicroservices.pdf
None