Фреймворк заточенный под создание проектов с микросервисной архитектурой

deonis

Новичок
Добрый день.

Подскажите, пожалуйста, существую ли в природе фреймворки на php или других языках, которые заточены под создание проектов с микросервисной архитектурой. То есть, там из коробки уже есть всевозможные транспортные решения, демонизация и так далее. Например:

1) железобетонное решение с отправкой событий в шину (например, хранение событий в базе + демон, что отправляет их в саму шину, или что-то другое)
2) подтверждение, если необходимо, что событие доставлено и отработано другим микросервисом (например, для имитация транзакционности)
3) демонизация части микросервиса, когда надо что-то, что будет постоянно обрабатывать джобы. Желательно с поддержкой масштабирования выполнения различного количества джоб в N потоков
4) трассирование бизнес-запроса по разным микросервисам
и так далее.

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

Буду благодарен за любые ссылки или названия.

P.S. Понимаю, что вопрос может быть слишком общим. Но решил перед тем как начнем пилить свой велосипед уточнить, может быть уже есть что-то подобное на рынке.
 

fixxxer

К.О.
Партнер клуба
Для service bus есть symfony/messenger.
Демонизация в современном мире docker/k8s не нужна.

Был, например, такой prooph, его авторы прекратили его развитие, поскольку в подобном фреймворке не оказалось никакого смысла:

All components will receive support until December 31, 2019 and will then be marked as deprecated and receive no further support from the prooph core team.

Let me explain why we decided this:

Event-Sourcing:
In fact, we recommend not using any framework or library as part of your domain model, and building the few lines of code needed to implement a left fold yourself - partly to ensure understanding and partly to keep your domain model dependency-free. The event-sourcing component was always meant to be a blueprint for a homegrown implementation but most people installed and used it as is, thus the prooph core team was complicit in advertising bad practices.

Don't worry, we will also ship some blueprints as inspiration on how to implement an aggregate root and aggregate repository, but this time, it's part of the documentation and not a repository that you could install again. You can still copy / paste from it and make it run, it's your choice.

Service-Bus:
When it was originally developed, there was no good alternative out there. In the meantime symfony shipped its own messenger component (I looked into it, it looks really great!) and sooner or later, it will probably have more downloads then our famous service-bus implementation.
 

deonis

Новичок
Сверху