У меня есть 2 микросервиса: «A» создает некоторые данные, которые являются источником событий и реплицируются в микросервисе «B». У меня есть пользовательский интерфейс, который взаимодействует с API, расположенным поверх микросервиса «B», который внутренне использует реплицированные данные из «A». Я сделал расчет доступности отдельно для обоих микросервисов — скажем, 99,5% и 99,8%. Как рассчитать доступность для всей системы? Например, если «A» не работает, а «B» работает, пользователи по-прежнему видят API, работающие из B, хотя и с устаревшими данными из «A». Я не должен был быть первым, кто наткнулся на этот сценарий...
Расчет доступности микросервисной архитектуры, управляемой событиями
Ответы (1)
Опишем два варианта:
1) Вашему клиенту нужны самые свежие данные (оценка некоторых требований, оценка в режиме реального времени и т. д.): микросервисы зависят друг от друга, поэтому вы должны умножить обе возможности на 99,8 % x 99,5% = 99,3%
2) Вашему клиенту не нужны самые свежие данные (скорее всего, какое-то формирование отчетов): Вы можете заявить о доступности системы на уровне 99,8%.
person
Bohdan
schedule
09.04.2020
Так зачем умножать? Вы рассчитали вероятность того, что оба доступны? Вопрос в том, что B показывает устаревшие данные из A.
- person Wouter; 09.04.2020
cron
, которое копирует удаленные данные в локальный кеш. - person Constantin Galbenu   schedule 13.02.2019