Показать сообщение отдельно
  #9 (permalink)  
Старый 30.05.2010, 03:44
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от Gvozd
но при этом есть проблема при посылке двух одновременных запросов с одинаковым случайным числом,
Это очень редкий случай.
Сообщение от Gvozd
у вас есть решение обхода проблемы одновременных запросов, и чтобы было безопасно
Эту проблему можно решить так:
1. При смене рандомного числа, запоминаем прошлое, а так же время запроса.
2. Если приходит запрос с прошлым числом и время больше, например, минуты, прошедшее со времени последнего обновления - сбрасывать доступ. Если меньше минуты - разрешать доступ и так же обновлять число, но не переписывать старое. Т.е. у нас остальные вызовы будут обработаны.
3. Если пришло новое число - пункт 1.

Думаю, что минуты вполне достаточно для попытки достучаться до сервера. Если же пользователь больше минуты не обновлял страницу и сессия жива - будет использоваться последнее число, полученное при прошлом обращении. Хочу подчеркнуть, что это очень редкий случай.

Думается мне, что безопасность тут не пострадает.

Сообщение от Gvozd
у меня устойчивое чувство, что мы тут занимаемся изобретательством велосипеда
Возможно, но почему бы и не развить эту тему?
Ответить с цитированием