add Monolith and microservices topic

This commit is contained in:
Yury 2022-06-15 19:56:34 +03:00
parent 031efd92ca
commit 1154e21fd1

View File

@ -2338,31 +2338,40 @@
<div align="right"><a href="#top">Содержание ⬆️</a></div> <div align="right"><a href="#top">Содержание ⬆️</a></div>
- ### Монолитная архитектура - ### Монолитная и микросервисная архитектура
Монолит полноценное серверное приложение, которое содержит единую кодовую базу (написана на одном языке и храниться в одном репозитории) и имеет единую точку входа (для запуска всего приложения). По сути это самый распространенный подход для создания приложения в одиночку или небольшой командой.
- Достоинства
> - Простота разработки (все в одном стиле и в одном месте). <br>
> - Простота развертывания. <br>
> - Легко масштабируется на начальном этапе.
- Недостатки
> - Нарастающая сложность (с ростом проекта увеличивается порог входа для новых разработчиков). <br>
> - Растет время на сборку и запуск. <br>
> - Усложняется добавление нового функционала, который затрагивает старый. <br>
> - Сложно (или невозможно) применение новых технологий.
Микросервис по сути это тот же монолит, то есть полноценное отдельное приложение с единой кодовой базой. Но такое приложение отвечает лишь за одну функциональную единицу. То есть это маленький сервис, который решает одну задачу, но хорошо. Как правило, микросервис может создать один разработчик за 2-4 недели.
- Достоинства
> - Распределенность (каждый отдельный микросервис может иметь свой стек технологий и разрабатываться не зависимо). <br>
> - Легко добавлять новый функционал (просто создайте новый микросервис). <br>
> - Каждый отдельный микросервис легче понять и проверить. <br>
> - Малые затраты времени на сборку и запуск.
- Недостатки
> - Сложность реализации взаимодействия между всеми микросервисами. <br>
> - Сложнее в эксплуатации, чем несколько экземпляров монолита. <br>
> - Сложность выполнения транзакций. <br>
> - Изменения, затрагивающие несколько микросервисов, должны координироваться.
<details> <details>
<summary>🔗 <b>Ссылки на материалы</b></summary> <summary>🔗 <b>Ссылки на материалы</b></summary>
1. [**** ]() 1. [**Сравнение микросервисной и монолитной архитектур**](https://www.atlassian.com/ru/microservices/microservices-architecture/microservices-vs-monolith)
1. [**** ]() 1. [**Архитектура приложений. Монолит VS Микросервисы** YouTube](https://youtu.be/pzwbFUzj5R8)
1. [**** ]() 1. [**Что такое микросервисы. Основные принципы и паттерны** YouTube](https://youtu.be/uKtRSmO8ALk)
1. [**** ]() 1. [**Модули, монолиты и микросервисы** habr.com](https://habr.com/ru/company/flant/blog/572414/)
1. [**** ]()
</details>
<div align="right"><a href="#top">Содержание ⬆️</a></div>
- ### Микросервисная архитектура
<details>
<summary>🔗 <b>Ссылки на материалы</b></summary>
1. [**** ]()
1. [**** ]()
1. [**** ]()
1. [**** ]()
1. [**** ]()
1. [**** ]()
</details> </details>
<div align="right"><a href="#top">Содержание ⬆️</a></div> <div align="right"><a href="#top">Содержание ⬆️</a></div>