Микросервисы не подходят для логики нашей предметной области

Микросервисы не подходят для логики нашей предметной области
Микросервисы не подходят для логики нашей предметной области - growtika @ Unsplash

Ничто здесь не кажется принципиально несовместимым с микросервисами

Конечно, у вас много бизнес-логики, но архитектура на это не влияет.

Все рабочие времена и элементы отсутствия после даты увольнения должны быть удалены.

Отправьте сообщение в "службу расписания работы" и "службу отсутствия", чтобы удалить эти элементы. Эти микросервисы обрабатывают сообщение.

Согласно коллективному договору работников, должна быть установлена последняя дата выдачи зарплаты.

Отправьте сообщение в "механизм правил коллективного договора" для получения последней даты, обработайте ответ и отправьте сообщение в "службу заработной платы" для установки последней даты.

До этой даты должны быть выплачены или использованы отпускные, гибкие, отгулы и т.д.

(Кажется, что это больше похоже на то, что сотрудник должен доработать, а не на архитектурную проблему)

Логины сотрудников на наших платформах должны быть аннулированы

Отправить сообщение в "службу пользователей" об удалении логинов.

Наши партнеры по интеграции должны получить информацию о том, что данный сотрудник больше не работает в компании

Отправьте сообщение "службе интеграции партера" (или службам), которые могут делать все, что им нужно.

Если смена накладывается на период отпуска, необходимо произвести вычет из отпускного счета.

Отправьте сообщение в "службу отсутствия", которая может обработать его соответствующим образом.

если смена превышает максимальное количество рабочих часов, установленное коллективным договором для данного периода (месяц, неделя и т.д.). Смена не должна быть создана ИЛИ должна быть создана надбавка за сверхурочную работу для данной смены

Отправьте сообщение в "механизм правил коллективного договора", затем либо отклоните смену, либо отправьте сообщение в "службу заработной платы" с информацией о сверхурочных.

Мне кажется, что границы нашего бизнеса слишком велики.

Мне больше кажется, что вы не полностью разложили границы в вашей системе, но только вы можете ответить на этот вопрос.

Прикрепляю к посту несколько видео по теме:

Прикрепленное видео 1 - Вопрос архитектуры - трехслойное приложение или сервисы?

Прикрепленное видео 2 - Декомпозиция предметной области (на примере магазина)

Прикрепленное видео 3 - Тестируем микросервисы правильно. Татьяна Шепелева


LetsCodeIt, 28 декабря 2022 г., 23:41