В настоящее время я работаю над переносом монолитного приложения на микросервисы, и первая проблема, с которой я столкнулся, это известная проблема распределенных транзакций.
У меня есть микросервис, называемый микросервисом аутентификации, целью которого является аутентификация пользователей с использованием Oauth2.
Моя проблема заключается в следующем:
интерфейс заполняет форму и отправляет много данных, часть из которых принадлежит микросервису сотрудника, а другая - службе аутентификации
поэтому, когда я получаю эти данные, я должен сразу добавить пользователя и сотрудника.
Теперь представьте, что пользователь был добавлен, но сотрудник не из-за какого-то сбоя? или даже хуже, представьте, когда я удаляю пользователя, а сотрудник не будет удален?
так что вы можете иметь в виду шаблон 2PC или саги, я потратил 2 дня на изучение и анализ возможностей использования этих решений, но это усложняет ситуацию, и я думаю, что моя проблема не стоит этого.
Я разместил вопрос, чтобы искать какие-то новые идеи или, может быть, есть какая-то новая технология, которую мне не хватает.
спасибо