В соответствии с документом RAFT упоминается, что каждый сервер помимо сервера-лидера имеет свою собственную запись журнала и свой конечный автомат, и каждый конечный автомат обрабатывает одинаковую последовательность команд из журнала.
У меня естьнесколько запросов по этому сценарию.
[1] Если 1 клиент делает какой-либо запрос на сервер-лидер, это означает, что все серверы-последователи обрабатывают запросы и выдают результаты?Но кто сообщает клиенту выходные данные?
[2] Если ответом на первый вопрос является только лидер, он передает выходные данные клиенту, тогда зачем использовать несколько последователей, вычисляющих / обрабатывающих одни и те же входные данные?в их конечных автоматах из записей журнала.Поскольку уже известно, что RAFT гарантирует, что все записи журнала должны содержать одинаковые команды в одинаковом порядке.Разве для лидера достаточно обработать запись из журнала на его автомате и вернуть ее клиенту?
[3] Также, если несколько клиентов делают одинаковые запросы к серверу, не так ли?только лидер, который сообщает результат всем клиентам, или здесь появляется изображение последователя?