Я новичок в DDD и CQRS и планирую создать простое приложение, чтобы немного улучшить свои навыки.Я планирую сделать простое приложение Taxi Corp.
Требования:
- Клиент заказывает такси.
- Клиент может заказать только один заказ.время.
- Водитель выбирает заказ.
- Водитель может иметь только один заказ за один раз.
- Водитель едет к клиенту.
- Клиент заходит в кабину.
- Курс начинается.
- Курс заканчивается.
- Клиент куплен, а водитель оплачивается
И т. Д.
Я вижу, что может быть три совокупности: клиент, заказ и водитель.Я хочу разделить их на отдельные микросервисы.Как вы думаете, это хорошая идея, или я должен начать с одного микросервиса?
В настоящее время я сосредоточен на заказе такси.Прежде всего, мне нужно проверить, не назначен ли клиенту курс, позже я могу создать заказ.После того, как заказ создан, мне нужно назначить его клиенту.Поскольку во время одного запроса можно обновить / создать только один агрегат, мне интересно, как это сделать правильно.Я прочитал кое-что о менеджерах процессов, и я думаю, что это будет очень полезно в этом случае.Я даже рисую схему общения.Может кто-нибудь сказать мне, если мой подход правильный и дать мне несколько советов о том, как идти дальше?
Процесс создания заказа