Как осуществляется транзакция для одного пользователя, когда несколько пользователей пытаются забронировать билеты онлайн на одно и то же место ?
как справиться с такой ситуацией.если есть два свободных места, то 10 разных людей пытались забронировать билеты на эти два места .затем, наконец, бронирование мест производится только для одного человека и как управляется транзакция.
Что я уже пробовал:
я думал, что он использует концепцию блокировки, так как я не очень хорошо знаком с такого рода сценариями .
Ziee-M
На самом деле это ситуация параллелизма. Параллелизм возникает, когда несколько транзакций пытаются обновить одну и ту же строку/данные.
Исключение будет вызвано, если вы упадете в этом случае, и вам придется обработать это исключение, чтобы разрешить ситуацию.
Я не могу дать вам больше подробностей, потому что это полностью зависит от инструментов, которые вы используете для доступа к своей базе данных (EnityFrame, ADO.net-да...)
Каждый из них обрабатывает параллелизм по-разному.
Всего несколько поисков с ключевым словом concurrency, и вы найдете множество ответов.