У нас есть сценарий использования, в котором нам нужно иметь линейное состояние, как показано ниже.
Инициировано -> Обновлено -> Запрошено -> Решено -> Принято -> Установлено
У нас есть несколько узлов какподписывающие узлы в состоянии Запрошено, Разрешено, Установлено.Нам нужно обновить состояние с Запрошено до Разрешено до Принято, если и только если все вовлеченные узлы разрешают свои запросы.
Не каждый узел может иметь запрос.Поэтому, если один из узлов принимает его без каких-либо запросов, это не означает, что другие должны его принять.Возможно, у них еще есть запрос.Как нам справиться с этим изменением состояния, когда каждый узел может иметь разные слова в одном и том же состоянии?