Подсчет посетителей на сайте

N
На сайте с 14.06.2004
Offline
107
974

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

Наиболее оптимальным вариантом считаю ставить юзеру сессию, кроном посчитывать количество файлов-сессий раз в 2-3минуты.

Второй вариант. При переходе по страницам - вставлять в базу записи о юзере и времени.

Кто как делает? Хочется услышать еще мнения

[Удален]
#1

Сессия. А крон тут зачем? Человек обращается к странице, работает скрипт который считает для какого количества человек в настоящий момент создана сессия и выводится результат - зачем усложнять?

N
На сайте с 14.06.2004
Offline
107
#2
скрипт который считает для какого количества человек в настоящий момент создана сессия и выводится результат

Вот с этого места подробнее можно? Как подсчитать количество созданных сессий?

BR
На сайте с 28.06.2008
Offline
75
#3

Если бы речь шла о JSP, то там при создании и закрытии сессии происходит событие которое можно обработать, но так как ТС не сказал о какой web-технологии идет речь, то видимо это PHP (если предлагают работу и не пишут где - Москва, если говорят о web программировании и не упоминают язык - PHP), тогда считайте сессионные файлы или используйте собственную обработку сессий (тынц), также можно поместить в странички AJAX-скрипт, который будет периодически дергать серверный скрипт, сообщая ему что пользователь с каким-то id еще "жив".

размещение сайтов (http://www.brim.ru)
zhidronsss
На сайте с 12.10.2007
Offline
36
#4

тут писано http://web.wbz.ru/index.php?page=lesns&hid=2&pid=6

т.е. пишем все индификаторы сессий+ время создания в файл (БД)

при открытии новой сессии выкидываем из файла записи время создания которых больше 8 минут (например)

и выводим количество записей, что условно является количеством посетителей

NB
На сайте с 14.09.2004
Offline
95
#5

Отследить заход посетителя на сайт -- не проблема.

Основная проблема -- отследить уход посетителя с сайта. Поскольку возможности протокола http не позволяют это корректно выяснить, то любая методика подсчета будет давать достаточно условное значение.

Пожалуй, хорошим вариантом будет тот, который привел zhidronsss. Но с некоторой модификацией. Записи в БД надо корректировать при проявлении активности пользователя (переход на другую страницу сайта, сабмит формы и т.п.) -- заносить в БД время последней активности пользователя. А затем -- выкидывать из БД записи, время последней активности которых было более N минут назад (N подбирается исходя из среднего времени нахождения посетителя на сайте).

N
На сайте с 14.06.2004
Offline
107
#6

Спасибо всем за помощь!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий