Я использую таблицу MySQL типа Memory, в которой есть поля с данными о пользователе и поле времени последнего обновления. По полю времени последнего обновления Я удаляю "мёртвых" пользователей. Поле периодически запросом с клиента обновляется для сохранения корректности. Основная потеря времени происходит при обновлении данного поля.
Хочу исправить данный недостаток, возможно поменять весь механизм. Отсюда вопрос:
В каком виде лучше хранить список он-лайн пользователей?
Спустя 2 часа, 40 минут, 51 секунда (12.05.2011 - 02:49) inpost написал(а):
Riteret
У каждого пользователя ставишь `lastactive`, хранишь в переменной время 15-и минутами ранее, и проверяешь, если NOW()-15минут < `lastactive`, значит этот пользователь в сети. 15 минут - настраиваемое число.
У каждого пользователя ставишь `lastactive`, хранишь в переменной время 15-и минутами ранее, и проверяешь, если NOW()-15минут < `lastactive`, значит этот пользователь в сети. 15 минут - настраиваемое число.
Спустя 5 часов, 6 минут, 58 секунд (12.05.2011 - 07:56) Mirexzpalich написал(а):
Мну тож интересует ета тема =)
inpost
Ты имеешь в виду хранить в БД.
Я слышал, что мона организовать сессиями. Это реально?
Подумав, я пришел к выводу, что это мона организовать с помощью кук.
Какой способ самый быстродействующий, при учете, что посещаемость не менее 20 000 уников в день? Или это слишком малое количество пользователей, что особого выиграша не один вариант не даст, и заморачиваться не стоит?
inpost
Ты имеешь в виду хранить в БД.
Я слышал, что мона организовать сессиями. Это реально?
Подумав, я пришел к выводу, что это мона организовать с помощью кук.
Какой способ самый быстродействующий, при учете, что посещаемость не менее 20 000 уников в день? Или это слишком малое количество пользователей, что особого выиграша не один вариант не даст, и заморачиваться не стоит?
Спустя 23 минуты, 38 секунд (12.05.2011 - 08:19) linker написал(а):
Если на сервере важно знать список он-лайн пользователей, то ни куки, ни сессии не помогут. Делаем как говорит inpost, с одной оговоркой, нужна отдельная таблица с активными сессиями, где есть хэш сессии, id пользователя и дата последнего обновления.