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
Slicing up a monolithic application Why and how?
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Olivier Dolbeau
October 02, 2015
Programming
920
0
Share
Slicing up a monolithic application Why and how?
Talk given with Benjamin Fraud (@bench1ps) at Paris Web 2015
Olivier Dolbeau
October 02, 2015
More Decks by Olivier Dolbeau
See All by Olivier Dolbeau
Throw new \Exception(); Oui, mais laquelle ?
odolbeau
1
300
Jane & Webby
odolbeau
0
480
Translating a monolingual application
odolbeau
2
680
DX: Developer eXperience
odolbeau
1
120
DX: Developer eXperience
odolbeau
1
580
EasyAdminBundle introduction
odolbeau
0
220
REX API Platform
odolbeau
0
1.4k
Features flags at BlaBlaCar
odolbeau
5
1.2k
25+ million members in 22 countries, how to scale with Symfony2
odolbeau
2
660
Other Decks in Programming
See All in Programming
今年もTECHSCOREブログを書き続けます!
hiraoku101
0
220
GoのDB アクセスにおける 「型安全」と「柔軟性」の両立 - Bob という選択肢
tak848
0
310
Radical Imagining - LIFT 2025-2027 Policy Agenda
lift1998
0
230
「速くなった気がする」をデータで疑う
senleaf24
0
140
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
300
モダンOBSプラグイン開発
umireon
0
200
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
390
Feature Toggle は捨てやすく使おう
gennei
0
410
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記
mkmk884
0
300
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.3k
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
3
380
Featured
See All Featured
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.6k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Become a Pro
speakerdeck
PRO
31
5.9k
Paper Plane (Part 1)
katiecoart
PRO
0
6.4k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
320
Amusing Abliteration
ianozsvald
1
150
Prompt Engineering for Job Search
mfonobong
0
250
The agentic SEO stack - context over prompts
schlessera
0
730
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
Transcript
Slicing up a monolithic application Why and how?
None
None
None
Slicing up a monolithic application Why and how?
What is a monolithic application?
“It does everything, even coffee” - Every developer ever
Website
Mobile apps
So big!
406 187 NLOC There are “only” 268 041 NLOC for
symfony/symfony
29 582 Commits There are “only” 15 506 commits for
symfony/symfony There are “only” 10 228 commits for joyent/node There are “only” 9 266 commits for twbs/bootstrap There are 44 809 commits for rails/rails (but it’s ruby… #troll)
75 contributors There are 1 193 contributors for symfony/symfony
20 minutes to deploy the application
“Everything should be made as simple as possible but not
simpler” Albert Einstein
None
➚ Pragmatism “Just get it done, ok?” - God
➚ Processes - “Let’s sync!” - “No way man” -
A developer and an ops, on a friday evening
➚ Learning “It must be somewhere in that file” -
A struggling mentor
➘ Conflicts “I’ve been rebasing for years, kill me now”
- A Git enthusiast
➘ Time consuming “The script has been frozen for 30
minutes, should I worry?” - A worried developer
➘ Maintenance “It works, but I can’t figure out why”
- Both of us
➘ Lack of expertise “I’ve only been there for 3
years for God’s sake!” - A senior developer
➘ Side effects “The website is broken” - A user
on Twitter
With minor change comes major bugs.
With minor change comes major bugs. Olivier, based on its
personal experience.
Objectifs BlaBlaCar today.
countries NEW IN 2015 India Mexico Hungary Romania Serbia Croatia
19
Exponential growth 20 million members in April 2015
What are micro- services?
Users Ratings Notifications Moderation Trips
Objectives - Going worldwide - Fast growing community
BlaBlaCar is deploying multiple datacenters.
We need to localize our data.
Different needs mean different storage.
There are only two hard things in Computer Science: cache
invalidation and naming things. Phil Carlton
The gateway
Business Data
- How to make it easier for everyone to work
together? - How to avoid conflicts? - How to foster expertise?
- Micro-startups - Independant teams - Focus on a specific
domain - Multi-skills - Limited lifespan Team work
None
- Easy to understand - Fast to test, fast to
deploy - Framework - Open-source - No more conflicts
- Long to bootstrap - Specific projects to handle configuration
- Increases ops complexity
None
Micro services are not a silver bullet!
Migrate from monolithic to micro services can be a pain.
t is worth it if you need it!
• Micro services are not a silver bullet! • Migrate
from monolithic to micro services is a pain. • It is worth it if you need it! Benjamin Fraud @bench1ps Olivier Dolbeau @odolbeau