При сетевом разделении распределённая система не может одновременно гарантировать линейризуемую согласованность и ответ на каждый запрос к неотказавшему узлу.
Что гласит CAP-теорема и почему в условиях сетевого разделения (Partition) невозможно одновременно сохранить согласованность (Consistency) и доступность (Availability)?
При сетевом разделении распределённая система не может одновременно гарантировать линейризуемую согласованность и ответ на каждый запрос к неотказавшему узлу.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
При сетевом разделении распределённая система не может одновременно гарантировать линейризуемую согласованность и ответ на каждый запрос к неотказавшему узлу.
Если два узла не могут обмениваться данными, подтверждённая запись на одном неизвестна другому. Второй должен либо не обслужить часть запросов до восстановления связи, либо ответить без гарантии актуального согласованного состояния. В CAP доступность имеет строгое определение и не равна просто высокому проценту uptime; consistency тоже не означает любой удобный уровень согласованности. Это не постоянный выбор «двух из трёх»: конфликт проявляется именно при разделении, а поведение может различаться для разных операций.
Источник: users.ece.cmu.edu.