Поведение моего живого приложения, похожее на конфликты сессий. Не могу понять, почему

По сути, пользователи периодически видят и перезаписывают данные друг друга (очевидно, это очень плохо). Я пытался воссоздать поведение на моем сайте тестирования безрезультатно. На месте тестирования, счета упорно дисплей только свои собственные данные.

Это приложение с низким трафиком. В настоящее время он имеет менее 200 учетных записей пользователей.

Я счастлив опубликовать свой код, но я даже не уверен, какой код размещать.

Вещи, о которых я думал, которые могут вызвать такое поведение:

Нескольким пользователям случайно назначаются избыточные идентификаторы в базе данных.

Нету. Ограничения ключа базы данных запрещают это, как они должны.

Столкновения с идентификатором сессии.

Я сомневаюсь. Идентификаторы сессий устанавливаются PHP, я не возился с этим, поэтому они представляют собой большие длинные хеши MD5, какими они и должны быть.

Столкновение сессий в базе данных.

Наша таблица Sessions в базе данных имеет пять столбцов: sessionkey, uid, serieskey, expiration и ipaddress. Сессии создаются и удаляются, как и должно быть, когда пользователи входят и выходят из системы. Я смотрю это в режиме реального времени, и он отлично работает.

И все же на нашем тестовом сайте я не могу воспроизвести поведение. Даже с несколькими учетными записями, вошедшими одновременно с разных ip-адресов. Но пользователи определенно сообщают об этом на живом сайте, и я могу видеть результаты перезаписи данных друг друга в моей базе данных. Я в недоумении относительно того, почему это может происходить. Зная, что ты не видишь всю мою гигантскую кодовую базу (мне и двум другим понадобилось год, чтобы написать это), с чего бы ты начал искать дальше?

1

Решение

Проблема была в том, как мы создавали файлы cookie. Это была часть кода, над которым я никогда не работал. Когда мне удалось загнать парня, который написал эту часть, он точно знал, почему это происходит, и исправил это за минуту.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]