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
CAP Theorem Basics
Search
mrzasa
August 05, 2015
Programming
75
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CAP Theorem Basics
Slides for Ruby Talks (workshops at PGS Software). Simple explaination of the CAP theorem,
mrzasa
August 05, 2015
More Decks by mrzasa
See All by mrzasa
Magica Journey through Regex Engine Internals - T3chFest 2025
mrzasa
0
94
Debug Like a Scientist! Copenhagen Developers Festival 2024
mrzasa
1
110
API Optimization Tale: Monitor, Fix and Deploy (on Friday). GopherCon Europe 2023
mrzasa
0
90
API Optimization Tale: Monitor, Fix and Deploy (on Friday). RubyConf BR
mrzasa
0
43
API Optimization Tale: Monitor, Fix and Deploy (on Friday). RailsConf 2021
mrzasa
0
58
API Optimization Tale: Monitor, Fix and Deploy (on Friday). Italian Ruby Day
mrzasa
0
280
I Can Kill Your Browser With a Simple Regexp. Workshop
mrzasa
0
140
[PL] Kto to jest senior developer? - 4Developers 2019
mrzasa
0
200
[PL] (HackYeah) Nie ma nic prostszego niż napisanie wolnego regexpa
mrzasa
0
170
Other Decks in Programming
See All in Programming
AIエージェントで 変わるAndroid開発環境
takahirom
2
720
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
3
660
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
870
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
240
What's New in Android 2026
veronikapj
0
210
関数型プログラミングのメリットって何だろう?
wanko_it
0
200
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
0
180
[RVD26] Vibe Architecture en 2040 : Darwin a-t-il (enfin) eu raison des architectes ?
alexandretouret
0
100
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
1.3k
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
150
ここ半年くらいでAIに作らせたR用ツール
eitsupi
0
290
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
16k
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Docker and Python
trallard
47
4k
Done Done
chrislema
186
16k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.2k
We Have a Design System, Now What?
morganepeng
55
8.2k
Evolving SEO for Evolving Search Engines
ryanjones
0
250
YesSQL, Process and Tooling at Scale
rocio
174
15k
Code Review Best Practice
trishagee
74
20k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
220
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
500
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
Transcript
CAP THEOREM OR: YOU CANNOT HAVE EVERYTHING Maciej Rząsa
DISTRIBUTED SYSTEM A distributed system is a so ware system
in which components located on networked computers communicate and coordinate their actions by passing messages.
REALLY? WHERE DO I USE IT? ssh/ p ssh/ p
email web mobile apps
ASSUMPTIONS system that stores data asynchronous network
THREE FEATURES Consistency Availability Partition tolerance
A read sees all previously completed writes CONSISTENCY
Reads and writes always succeed. AVAILABILITY
Guaranteed properties are maintained even when network failures prevent some
machines from communicating with others. PARTITION TOLERANCE
In a distributed system connected with an asynchronous network you
can pick two. Why? Consider two clients attached to nodes without network connection. CAP: CHOOSE TWO
WHERE IS IT USEFUL? web forms: fetch data, wait and
send it mobile apps: offline mode distributed databases: mongo, redis, elastic search what about the project you develop?
http://blog.nahurst.com/visual-guide-to-nosql-systems
ALLOWING PARTITIONS YOU MUST CHOOSE AVAILABILITY OR CONSISTENCY