[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Кеширование для "Пользользователи онлайн"
EenzamE
Всем привет.
Никогда раньше не работал с кешированием.
Есть скрипт, мембер зоны так сказать. После того как пользователь выполняет вход под своим аккаунтом для него действует на всех страницах сайта
UPDATE `users` SET `users_ontime`+300

Тоесть переходя по сайту в ячейке users_ontime прибавляется 5 минут что позволяет выводить статус юзера online.
Но ведь из-за большого кол-ва посетителей будет большая нагрузка на mysql ?
Подскажите пожалуйста как избежать этого. Знаю что кешированием, но как - нет.
Желательно с примером, заранее спасибо :)



Спустя 3 минуты, 59 секунд (13.02.2012 - 19:08) Игорь_Vasinsky написал(а):
писать в БД session_id() и регуоярно проверять их состояние.

Спустя 9 минут, 42 секунды (13.02.2012 - 19:17) EenzamE написал(а):
Игорь, не понял, это же не поможет, каждый раз всё-равно придётся делать запрос UPDATE?

Спустя 2 минуты, 31 секунда (13.02.2012 - 19:20) Игорь_Vasinsky написал(а):
только тогда - когда сессия с неким id мертва, и DELETE

Спустя 4 минуты, 30 секунд (13.02.2012 - 19:24) EenzamE написал(а):
Игорь, ну если не делать UPDATE то юзер через 5 минут уйдёт в офф, или я не так понял?

if ($udata['users_sessid']!= session_id(){
mysql_query("UPDATE `users` SET `users_ontime` WHERE `users_nickname` = '$nickname';");
}

Спустя 8 минут, 39 секунд (13.02.2012 - 19:33) Игорь_Vasinsky написал(а):
я про это http://php.net/manual/en/function.session-status.php

в бд хранишь юзера с session_id() потом в цикле перебор и проверка - раз в 5-10 минут

тока это прототип алгоритма biggrin.gif

Спустя 29 минут, 31 секунда (13.02.2012 - 20:03) EenzamE написал(а):
Тоесть создать отдельно таблицу users_online И там хранить ник и sission_id?
я думал в записи с юзером хранить его время, если онлайн то +5 к времени, а если офф то последние посещение тогда-то, тогда-то

Спустя 1 минута, 51 секунда (13.02.2012 - 20:04) Игорь_Vasinsky написал(а):
мой вариант можно будет реализавать только с выходом PHP 5.4 biggrin.gif
Посмотри аналогичные решения http://www.google.ru/#sclient=psy-ab&hl=ru...53&pf=p&pdl=500
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.