HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p><strong>Микросервисы</strong>имеют и плюсы и минусы, на которых мы сейчас останавливаться не будем. Существует 6 причин разделять компоненты на микросервисы, вместо разработки монолита:</p>
1 <p><strong>Микросервисы</strong>имеют и плюсы и минусы, на которых мы сейчас останавливаться не будем. Существует 6 причин разделять компоненты на микросервисы, вместо разработки монолита:</p>
2 <ol><li><strong>Разная частота изменений</strong>(сервисы, которые меняются часто, имеет смысл выделить в отдельный микросервис).</li>
2 <ol><li><strong>Разная частота изменений</strong>(сервисы, которые меняются часто, имеет смысл выделить в отдельный микросервис).</li>
3 <li><strong>Разный жизненный цикл</strong>(например, какой-то компонент требует особого вида тестирования или к нему особые требования у регуляторов).</li>
3 <li><strong>Разный жизненный цикл</strong>(например, какой-то компонент требует особого вида тестирования или к нему особые требования у регуляторов).</li>
4 <li><strong>Разные требования к масштабированию</strong>(например, сильно нагружены чаще всего только 1-2 сервиса из десятков).</li>
4 <li><strong>Разные требования к масштабированию</strong>(например, сильно нагружены чаще всего только 1-2 сервиса из десятков).</li>
5 <li><strong>Изоляция сбоев</strong>(если взорвется один сервис, остальные продолжат работать, но при этом критичных компонентов не так много).</li>
5 <li><strong>Изоляция сбоев</strong>(если взорвется один сервис, остальные продолжат работать, но при этом критичных компонентов не так много).</li>
6 <li><strong>Фасад к внешним зависимостям</strong>(устойчивость к смене их API, всякие AAA, и т.д.).</li>
6 <li><strong>Фасад к внешним зависимостям</strong>(устойчивость к смене их API, всякие AAA, и т.д.).</li>
7 <li><strong>Необходимость в разном техническом стеке</strong>в разных частях системы.</li>
7 <li><strong>Необходимость в разном техническом стеке</strong>в разных частях системы.</li>
8 </ol><p>Все, что изложено выше, является, по сути, вольным пересказом вот этой статьи:<em>https://tanzu.vmware.com/content/blog/should-that-be-a-microservice-keep-these-six-factors-in-mind</em>.</p>
8 </ol><p>Все, что изложено выше, является, по сути, вольным пересказом вот этой статьи:<em>https://tanzu.vmware.com/content/blog/should-that-be-a-microservice-keep-these-six-factors-in-mind</em>.</p>
9 <p>Но давайте приведем пример, ведь вышеперечисленные причины, кажется, можно использовать для создания Outpost в архитектурном паттерне Цитадель.</p>
9 <p>Но давайте приведем пример, ведь вышеперечисленные причины, кажется, можно использовать для создания Outpost в архитектурном паттерне Цитадель.</p>
10 <h2>Цитадель</h2>
10 <h2>Цитадель</h2>
11 <p><strong>Citadel</strong>- архитектурный паттерн проектирования наряду с паттернами “Монолит” и “Микросервисы”.</p>
11 <p><strong>Citadel</strong>- архитектурный паттерн проектирования наряду с паттернами “Монолит” и “Микросервисы”.</p>
12 <p>Состоит в выделении некоторой функциональности из монолита в виде “Outpost” и сохранении основного условно монолитного ядра.</p>
12 <p>Состоит в выделении некоторой функциональности из монолита в виде “Outpost” и сохранении основного условно монолитного ядра.</p>
13 <p>Для того, чтобы принять решение оставлять ли некоторую функциональность в монолите или же вынести ее в микросервис, мы и можем вспомнить 6 причин делать микросервис.</p>
13 <p>Для того, чтобы принять решение оставлять ли некоторую функциональность в монолите или же вынести ее в микросервис, мы и можем вспомнить 6 причин делать микросервис.</p>
14 <p>Хороший пример для выделения в Outpost -<strong>сервис аутентификации</strong>, на который обычно бывает высокая нагрузка, или<strong>сервис-представление</strong>для какого-нибудь счетчика, который выдает пользователю количество непрочитанных сообщений.</p>
14 <p>Хороший пример для выделения в Outpost -<strong>сервис аутентификации</strong>, на который обычно бывает высокая нагрузка, или<strong>сервис-представление</strong>для какого-нибудь счетчика, который выдает пользователю количество непрочитанных сообщений.</p>
15 <p>В итоге получается, что<strong>для основной функциональности мы пользуемся плюсами монолита, а для граничных условий пользуемся плюсами микросервисов</strong>.</p>
15 <p>В итоге получается, что<strong>для основной функциональности мы пользуемся плюсами монолита, а для граничных условий пользуемся плюсами микросервисов</strong>.</p>
16 <p>На этом все, больше полезных материалов смотрите в<a>моем блоге</a>.</p>
16 <p>На этом все, больше полезных материалов смотрите в<a>моем блоге</a>.</p>
17  
17