#continuous-integration #microservices #continuous-deployment
#непрерывная интеграция #микросервисы #непрерывное развертывание
Вопрос:
Я читал много статей, в которых говорится, что микросервисы включают CI / CD. Однако в статьях не объясняется, как и почему это так. Кажется, что вы также можете непрерывно развертывать monolith после прохождения всех его автоматических тестов.
Спасибо!
Ответ №1:
В этом есть много аспектов.
Кажется, что вы также можете непрерывно развертывать monolith после прохождения всех его автоматических тестов.
Монолит обычно отслеживает состояние, например, сеансы используются для кратковременного состояния пользователя. Где, поскольку современная архитектура микросервисов обычно следует принципам приложения Twelve Factor и обычно развертывается, например, в Kubernetes или другой облачной среде. Приложения, следующие принципам приложения с двенадцатью факторами, и приложения в Kubernetes не имеют состояния, например. все состояния пользователя в большинстве случаев обрабатываются вне приложения. См. https://12factor.net/processes
С приложениями без состояния гораздо проще масштабировать до большего количества экземпляров, например, 5 экземпляров для приложения, а также легко масштабировать до меньшего количества экземпляров, например, 2 экземпляра.
Когда приложение не имеет состояния и запускается в нескольких экземплярах, выполнение «скользящего развертывания», например, обновление одного экземпляра за раз, с версии 1 до версии 2 — это простой процесс и встроенная функциональность в Kubernetes.
Благодаря наличию всех вышеперечисленных функций реализовать непрерывное развертывание стало намного проще по сравнению с большими монолитными приложениями с сохранением состояния.
Комментарии:
1. Спасибо тебе, @Jonas!