Я занимаюсь написанием веб-сервисов для приложения. В этом приложении мы делаем все внутри транзакций, так как «единицы работы» - это часто не отдельные объекты, а несколько объектов, охватывающих несколько таблиц. Есть ситуации, когда мы хотим «Все или ничего», и транзакция имеет смысл. Однако я не совсем уверен, как это сделать в веб-сервисе, и даже не должен ли я это делать.
Мне кажется, что веб-сервисы должны быть без сохранения состояния, и предоставляемый API должен быть построен на основе для каждой сущности, но я не уверен, как обрабатывать «единицы работы», которые в случае сбоя одной части, должны произойти откат.
Должны ли веб-сервисы быть транзакционными? Как бы вы реализовали транзакции, было бы что-то вроде отправки «НАЧАЛА СДЕЛКИ» и заканчивая «ЗАВЕРШЕНИЕ СДЕЛКИ»?
Если веб-сервисы не имеют состояния, как вы справляетесь с «единицами работы», которые не являются независимыми?
Есть ли определенная литература, которую я могу прочитать по этой теме?
спасибо,