Безсерверная архитектура на основе доменной модели?
Недавно я начал использовать без сервера, я закончил учебник на serverless-stack.com, и я хотел посмотреть, есть ли способ представить модель домена в приложении. Я искал несколько образцов, но я не могу ничего найти.
У меня есть приложение, которое я хотел бы смоделировать. Как бы я сослался на это в главном файле serverless.yml? Как бы я сделал их частью того же шлюза API?
/users
serverless.yml
/posts
serverless.yml
/comments
serverless.yml
заранее спасибо
2 ответа
Решение
- С точки зрения DDD и MSA, вы правы в том, что пользователи, сообщения и комментарии - это разные микро-сервисы, поэтому они должны иметь свои собственные
serverless.yml
, Это подразумевает один API-шлюз для каждого. Это хорошая вещь. - Вероятно, намного проще, если бы они были в отдельных репозиториях, для удобства CI/CD. Вы не хотите, чтобы один коммит инициировал развертывание 3 сервисов.
- Если вам действительно нужен единый API, объединяющий пользователей, сообщения и комментарии, тогда, возможно, лучше использовать четвертый API, который действует как фасад для трех других. Это установленный шаблон проектирования в OO, SOA и MSA.
Я разработал пакет в npm для создания бессерверного базового проекта с использованием
- машинопись
- гексагональная архитектура (DDD)
- Исходный пример.