Прежде всего, для двух человек почти невозможно забронировать одновременно. Даже когда они нажимают на кнопку бронирования в одно и то же время, они приходят на сервер в разные моменты времени (из-за связи, расстояния, ...).
Так что это событие крайне маловероятно. Одним из решений будет добавление «бронирования», как только кто-то нажмет на место и начнет процесс бронирования. Это не позволяет другим пользователям бронировать одно и то же место, пока кто-то его бронирует. Если человек не забронировал место, вы можете просто «разблокировать» его снова.
Eventbrite , например, использует аналогичную систему. Они забронируют вам билет, как только вы нажмете кнопку get ticket
. Это гарантирует, что никто не захватит ваш билет, когда вы заполните свои данные.