Я полагаю, что эти требования (если их должным образом проанализировать) по существу несовместимы, поскольку они не могут работать в соответствии с теоремой CAP.
Если у вас есть несколько центров обработки данных, даже если они находятся рядом, произойдет разбиение. Если произойдет раздел, то ДОЛЖНА быть потеряна доступность ИЛИ согласованность, потому что либо:
- у вас есть предопределенный «ведущий», который продолжает работать, и другие «ведомые» DC, которые выходят из строя (или работают только для чтения). Это сохраняет согласованность за счет доступности.
- ИЛИ вы теряете согласованность на время раздела (это означает, что операции, которые зависят от немедленной согласованности, также недоступны).
Насколько я вижу, это несовместимо с вашими требованиями. То, что хочет ваш босс, явно невозможно. Ему нужно понять теорему CAP.
Теперь, в ВАШЕМ случае применения, вы можете решить, что вы можете изменить правила и переопределить, что такое согласованность или доступность, для удобства, и иметь систему, которая переходит в противоречивое, но временно приемлемое состояние.
Возможно, вы захотите, чтобы менеджмент продукта посмотрел на экономическое обоснование этих требований. Отбрасывание некоторых из них, вероятно, нормально. Непротиворечивость является хорошим требованием, поскольку она заставляет вещи вести себя так, как ожидают люди - это означает снижение доступности или терпимости к разделам. Сохранение согласованности определенно проще с технической точки зрения.