2010-06-19 3 views
1

Я работаю над компонентом на C#, чтобы записать, сколько уникальных зрителей просмотрели мой сайт/страницу, сделав то же самое повторное повторение пользователя, не записывается дважды. Что такое эффективный метод для написания такого компонента? Вы отслеживаете файлы cookie или объекты сеанса? Я бы записал свой IP-адрес (который не является статичным) или имя компьютера? Эта информация будет храниться в базе данных (насколько мне известно)Определить, сколько пользователей просмотрели страницу

Спасибо.

+1

Вы не можете получить имя своего компьютера. Он никогда не посылается через interwebz.Вы можете проверить, является ли запрос с открытым соединением первым с этим соединением или нет. Я действительно не знаю ASP.net, поэтому я не знаю, можете ли вы получить доступ к информации о http-соединениях. – 2010-06-19 16:23:52

ответ

3

Зачем изобретать колесо? Используйте Google Analytics - он бесплатный, чрезвычайно прост в реализации, предоставляет больше статистических данных, чем вы могли когда-либо хотеть, и может предоставлять (насколько это возможно, используя файлы cookie) уникальную статистику посетителя. Если вам действительно нужно хранить данные в базе данных (почему?), То вы можете использовать Google Analytics API, чтобы добраться до него и делать с ним то, что вам нужно.

+0

+1 для ссылки API, не знал, что у Google есть один для Google Analytics. –

+0

где бы вы храните данные, если не базу данных? Я открыт для переоснащения. Большое спасибо за предложение Google. – user279521

+0

Ну, я не знаю, что вам нужно делать с данными - но если он уже хранится в Google, вам нужно реплицировать это хранилище локально? Или вы можете просматривать/манипулировать им напрямую из Google через API? –

0

Запись IP-адреса не является хорошей идеей, так как многие люди фактически используют NAT для доступа из своей локальной сети в Интернет. Так много людей представят вам как одного человека, потому что все они имеют одинаковый публичный IP-адрес. Если вы находитесь в интрасети, это может работать, но определенно не для общедоступного веб-сайта.

Лучшее решение - написать GUID в файл cookie на компьютере пользователя и сохранить его в вашей базе данных. Затем снова ищите этот файл cookie в будущем и сравнивайте его со значениями в базе данных.

0

Уникальные визиты по IP-адресу всегда являются проблемой, так как у вас может быть организация с уникальным IP-адресом, но сотнями людей за этим IP-адресом.

Я думаю, что печенье - ваш лучший выбор.

Я предполагаю, что у вас есть причина не использовать статистику или пакет аналитики?

+0

статистика или пакет аналитики? Любые бесплатные там? За исключением затрат, связана его конфигурация (по сравнению с разработкой компонента, который можно использовать повторно) – user279521

+1

Google Analytics? http://www.google.com/analytics/ Все, что требуется, это несколько строк Javascript на ваших страницах. EDIT: Вы можете игнорировать это, я думаю, поскольку вы обновили исходный вопрос. Поскольку вам нужно хранить статистику в базе данных, готовый пакет может не уместиться. –

2

Да, вы можете записать IP-адрес, если вы используете традиционную схему входа в систему (при использовании пользователя членства), это может вести вас Link. Проверьте этот вопрос на IP, в котором рассказывается, как можно собирать IP. Это неплохая идея, если вы получите MAC главной машины, чтобы вы могли легко определить уникальное отслеживание посетителей.

+0

MAC не отправляется за пределы первого маршрутизатора? –

+0

Да, это правда. – Chaitanya

1

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

Если это ядро ​​для вашего приложения, чтобы гарантировать уникальность, то, к сожалению, это невозможно сделать гарантированным образом.

0

Оба IP-адреса и файлы cookie имеют свои компромиссы. Один пользователь может прыгать с Wi-Fi-точки доступа в точку доступа Wi-Fi, отбрасывая IP-метрики. Многие пользователи могут находиться за одним и тем же IP-адресом (работодателем, провайдером, прокси и т. Д.). Таким образом, IP-адрес будет не совсем точным.

С другой стороны, один пользователь на одном IP-адресе может получить доступ к вашему веб-сайту через несколько браузеров или устройств, поэтому файлы cookie не будут полностью точными.

А как насчет пользователя, который обращается к вашему сайту из дома и с работы? Один посетитель, два (минимум) уникальных печенья и IP-адреса.

Выберите недействительные данные, которые наиболее подходят для вас.

Смежные вопросы