Можно ли назвать ваш проект аукциона микросервисной архитектурой? Или это просто разделение? Что такое микросервис?
У нас проект не микросервисный, а модульный монолит.
Монолит потому, что весь бэкенд у нас сделан в виде одного Slim-приложения, которое мы разрабатываем и деплоим залпом. То есть у нас просто фронтенд ходит в один бэкенд по API:
frontend -> backend
Микросервисная архитектура - это такой подход, в котором каждая часть разрабатывается и деплоится в виде отдельных проектов со своими БД и своими API. А фронтенд через небольшую прослойку API Gateway уже ходит к каждому сервису по их API:
-> auth
-> blog
frontend -> gateway -> comment
-> catalog
-> payment
и сервисы общаются через очередь.
При таком подходе каждый такой микропроект вроде comment и payment живёт в своём репозитории, программируется разными программистами на любом фреймворке и языке программирования и деплоится своим пайплайном.
У нас монолит именно модульный потому, что внутри проекта api мы всё равно пытаемся делить код и таблицы в БД на самостоятельные модули, которые также будут общаться через очередь. То есть притворяемся, как будто делаем сервисы. При таком подходе мы в любой момент сможем при желании разнести наш проект на реальные отдельные сервисы-проекты.
Подробнее мы эти подходы рисовали и сравнивали в нашем большом стриме про модули и микросервисы.
Или войти через: