Это толерантность к разделу, что вы ошибаетесь.
До тех пор, пока не происходит какого-либо перегородки, системы могут быть последовательными и доступными. Существуют системы ЦС, которые говорят, что нам не нужны разделы. Вы можете заставить их работать внутри стойки с серверным оборудованием и сделать разбиение на разделы крайне маловероятным. Проблема в том, что, если разделы происходят?
Система может либо выбрать
- продолжать предоставлять услуги, в надежде, что другой сервер вниз, а не предоставление такой же сервис и обслуживание различных данных - выбор доступности (AP)
- прекратить предоставление сервис, потому что он больше не может гарантировать согласованность, поскольку он не знает, работает ли другой сервер или фактически запущен, и только связь между этими двумя прерывается - выбирая консистенция (CP)
Идея теоремы CAP является то, что вы не можете обеспечить как доступность И непротиворечивость, когда происходит разделение, вы можете пойти на доступность и надеяться на лучшее, или играть безопасно и быть недоступны, но последовательно.
Вот 2 большие сообщения, которые должны четко:
- You Can’t Sacrifice Partition Tolerance показывает идею, что каждый действительно распределенная система должна иметь дело с разбиением сейчас и чем и, следовательно, системы CA сломается сразу на первом появление раздела
- CAP Twelve Years Later: How the "Rules" Have Changed немного более современные и показывает теорему CAP более гибкой, где разработчики могут выбирать, как приложения ведут себя во время разделения и могут пожертвовать немного консистенции, чтобы получить некоторую доступность, ...
Чтобы, наконец, ответить на ваш вопрос, если вы берете систему CP и реплицируете ее чаще, вы можете либо нанести накладные расходы на сообщения, отправленные между узлами системы, чтобы сохранить их согласованными, либо - если значительная часть узлы терпят неудачу или сетевое разбиение происходит без какой-либо части, имеющей явное большинство, она не сможет продолжить работу, поскольку она больше не сможет гарантировать согласованность. Но да, эти линии становятся все более размытыми, и я думаю, что ссылки, которые я привел, дадут вам гораздо лучшее понимание.
Ваше понимание «доступного» неверно. Дело не в том, что каждый узел доступен; это то, что услуга доступна. Доступ к сервису возможен, даже если отдельные узлы не работают; это одна из причин, по которым мы используем избыточность. –