CAP-теорема простыми словами
Если погуглить CAP-теорему, выпадет миллион ссылок, большинство из которых содержат довольно заумную муть. Чуваки, CAP-теорема - это очень просто.
Без ухода в дебри, что утверждает CAP-теорема? Что в распределенной интернет-системе, по умолчанию толерантной к “разрывам”, можно выбрать либо доступность (А - availability) либо консистентность (C - consistency). Почему немного странно, что мы это знание запоминаем как Теорему?
Да потому что этот факт на самом деле понятен любому погромисту, который пишет дейтинги на похапе:
* либо твоя транзакция раскатывается сразу на несколько нод, и тогда у тебя есть консистентность между узлами, но при разрыве система становится недоступной (недоступна запись - ты же не можешь раскатать запись по нодам из-за разрыва). Ты выбрал consistency, потерял availability.
* либо ты раскатываешь транзакцию не сразу, но тогда у тебя нет консистентности, пока не доедет изменение (обычно eventual consistency - консистентность не сразу, но когда-нибудь обязательно). Ты выбрал availability, но потерял consistency.
Всё, элементарно. Не благодарите 🙂
Если интересны эти и многие другие темы по производительности и масштабированию - приходите к нам на практический хайлоад-буткемп devhands.io. В ноябре будет скорее всего последний набор в 2023-м году: слишком много участников, и каждому подай хорошую дорогую инфру 🙂 Приходите сами, посылайте коллег, приводите друзей и подруг.
——
devhands.io - хайлоад-буткэмп для девелоперов (своя инфра с первого дня, собираете свой стек, нагружаете, тюните, учитесь масштабировать)
Post #46
1.75K
- 👍 11
- 🔥 2