Вопрос с собеседования. Регистрация пользователей

 
 
 
Сообщения:350
Добрый день!
На собеседовании задали вопрос.

Как организовать работу приложения при регистрации пользователя, если в один момент времени разные пользователи попробуют зарегистрироваться под одинаковым пользователем ( логином ) ? Предполагается что с фронта с разных машин прилетит запрос регистрации с одинаковым логином и в один момент времени.

Заранее спасибо за ответы!
 
 
Сообщения:9794
На уровне БД установить unique contsraint и 2ой запрос получит исключение. Обрабатываем исключение и показываем соответствующую ошибку пользователю.
Изменен:06 янв 2019 13:05
 
 
Сообщения:350
Староверъ:
На уровне БД установить unique contsraint и 2ой запрос получит исключение. Обрабатываем исключение и показываем соответствующую ошибку пользователю.

А какой именно из запросов получит исключение, если они пришли в один момент времени ?
 
 
Сообщения:9794
На уровне СУБД в любом случае будет блок синхронизации когда идет запись в индекс, т.е. как бы там ни было - все равно в какой-то момент времени один поток остановится и будет ждать другого. Какой именно.. ну который 1ый попробует войти в критический блок.
Изменен:06 янв 2019 14:24
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет