Бесплатные мероприятия

nordic it school

Микросервисная архитектура - зачем она нужна?

Сегодня решили рассказать вам про виды архитектуры, которые используются в бекенд - сервисах. Они не обязательно связаны с каким-то конкретным языком, но в основном разговор о них ведется в контексте компилируемых и масштабируемых языков - таких как Java, C# или Golang.

Сервисы можно в плане архитектуры условно разделить на два типа - монолит и микросервисы.

Под монолитом понимается единая прослойка бекенда, которая доставляется через одно единое развертывание.
Развертывание – это отправка готовой версии бекенд-приложения на удаленный сервис, который и будет выполнять обслуживание. Например, на AWS или Digital Ocean.

Если у вас один небольшой проект, тогда монолит вполне подходит, но, с другой стороны, в тот момент, когда сервис у вас начнется разрастаться, команд и проектов становиться с каждым днем все больше, и у всех у них есть какие-то свои задачи и особенности - в таком случае могут быть более полезны микросервисы.

На микросервисах каждый отдельный сервис представляет из себя небольшого объема проект, и разворачивается отдельно.

Это позволяет, например, создать команде комфортный график развертывания, чтобы они могли разворачиваться в своем темпе, не беспокоя другие команды.
С другой стороны, структура бекенда станет несколько сложнее, и каждой команде нужно будет внимание какого - то специалиста, который будет отвечать за развертывание.

Кроме этого, к недостаткам микросервисов обычно относят вероятность частичного отказа, и в них сложнее настраивать транзакции, чем в монолите. Некоторые разработчики не любят микросервисы, так как, чтобы связать сервисы, вам приходиться прикладывать больше усилий для выстраивания архитектуры.

Так какую архитектуру стоит выбрать?

Вне сомнения, для принятия взвешенного решения вам нужно хорошо понимать, какое будущее ждет ваш проект.

В том случае, если вы пока не знаете, что делать, но проект не обещает быть не очень большим в будущем - тогда вы можете выбрать монолитную архитектуру, особенно если уверены в своем наборе технологий.

Если ваши приложения не будут сильно связаны бизнес – логикой – можете остановить свой выбор на микросервисах.

ДРУГИЕ НОВОСТИ

Выберите курс

Курс «Веб-разработка»

144 акад. ч.

Очный курс для начинающих

Ближайшая группа: 
24 апреля 2021

Курс «JavaScript-разработчик»

108 акад. ч.

Очный курс, необходимый уровень подготовки:
Основы
верстки сайтов
AJAXВеб-разработка

Курс «Golang-разработчик»

144 акад. ч.

Очный курс для начинающих

Ближайшая группа: 
15 мая 2021

Курс «Frontend-разработчик»

216 акад. ч.

Очный курс для начинающих

Ближайшая группа: 
08 мая 2021

Курс «Основы верстки сайтов»

60 акад. ч.

Очный курс для начинающих

Курс «Анализ данных
на Python»

144 акад. ч.

Очный курс для начинающих

Курс «Android-разработка
на Kotlin»

144 акад. ч.

Очный курс для начинающих

Набор на апрель

Курс «JAVA-разработчик»

216 акад. ч.

Очный курс для начинающих

Ближайшая группа: 
26 апреля 2021

Курс «C# и .NET»

180 акад. ч.

Очный курс для начинающих

Курс «Scratch: программирование для детей»

54 акад. ч.

Очный курс для детей 8–12 лет.

Курс «Основы создания игр. Minecraft»

54 акад. ч.

Очный курс для начинающих

МЫ РЯДОМ

Nordic IT School
Москва, ул. Большая Спасская 12
moscow@inordic.ru
лицензия на осуществление образовательной деятельности
Лицензия на осуществление образовательной деятельности:
№ 035452 от 19.09.2014 года