теория
Смотри, идея до смешного простая: держи не одну копию данных, а несколько, на разных узлах. Это и есть . Одна копия — это не система, а отложенная авария; несколько — уже страховка.
Самая распространённая схема — . Один узел объявляется лидером: только он принимает записи. Все изменения он потоком пересылает репликам-follower'ам. Реплики повторяют их у себя и готовы в любой момент подхватить работу. Заодно они разгружают чтение — ровно это «Ярмарка» уже делала с аналитикой ( появилась ещё раньше).
Ключевой вопрос — когда лидер считает запись состоявшейся. Здесь развилка:
И то, ради чего всё затевалось, — . Лидер упал → одна из реплик становится новым лидером, трафик записи идёт к ней. Сделай это автоматически и за секунды — и вчерашние одиннадцать минут превратятся в паузу, которую половина пользователей даже не заметит.
Звучит как решение всех бед. Но у копий есть одно коварное свойство, из-за которого дьявол прячется в деталях: они не всегда совпадают с оригиналом. К этому — через шаг.