Насколько уникален ID сессии?

Добрый день.
Назрел такой вопрос - где предел уникальности id сессии? Зная, что на деле угадать его практически невозможно, где может находиться предел, за которым генерируемые сессии начнут повторяться?
Допустим, в таблице есть поле session_id, в котором хранится собственно идентификатор сессии пользователя. Каждый новый гость - одна новая запись. Может ли это привести к тому, что в таблице рано или поздно появятся дублирующие записи?
  • Вопрос задан
  • 754 просмотра
Решения вопроса 4
@dmitryKovalskiy
программист средней руки
В теории - да, конечно. Если к вам в одну секунду зайдут 2^128 степени людей(устройств) - то вероятность возникновения дубляжа появится... однако стоит признать что в этот момент у вас будут другие проблемы. К примеру где взять ресурсы на обработку такого трафика
Ответ написан
Комментировать
Daemon23RUS
@Daemon23RUS
На практике - да, однозначно произойдет. Вопрос через сколько ... ведь существует ничтожная доля вероятности что через 1 -2 минуты.
А следуя логике если такое событие возможно, то использовать его в качестве ключевого поля нельзя.
Я бы добавил к session_id метку времени. Это будет действительно уникальное значение.
Ответ написан
Комментировать
dimonchik2013
@dimonchik2013
non progredi est regredi
хочешь ужасов?

habrahabr.ru/post/137316
поэтому обычно генерят с рендомной солью, например

ну и всякие UUID все это давно предусмотрели
Ответ написан
Комментировать
@marenkov
Из опыта проекта в котором участвую (sessionid был добавлен в базу давным давно) - не уникален. Раз в несколько месяцев получаем исключение из-за коллизии.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы