Аналитика, статистика или регистрация информации для PHP Script - PullRequest
0 голосов
/ 12 марта 2012

У меня есть плагин WordPress, который каждый час проверяет наличие обновленной версии самого себя на моем сайте. На моем веб-сайте запущен скрипт, который прослушивает такие запросы на обновление и отвечает данными.

Что я хочу реализовать, так это некоторую базовую аналитику для этого скрипта, которая может дать мне такую ​​информацию, как количество запросов в день, количество уникальных запросов в день / неделю / месяц и т. Д.

Как лучше всего это сделать?

  1. Используйте какой-нибудь существующий скрипт аналитики, который может сделать эту работу за меня
  2. Зарегистрируйте эту информацию в файле на сервере и обработайте этот файл на моем компьютере, чтобы получить эту информацию
  3. Записать эту информацию в базу данных на сервере и использовать запросы для получения информации

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

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

Ответы [ 2 ]

3 голосов
/ 14 марта 2012

Ничего себе. Я удивлен, что пока нет ответов. В любом случае, здесь идет:

1. Использование существующего скрипта / фреймворка

Очевидно, что аналитика Google не будет работать для вас, поскольку она основана на JavaScript. Я уверен, что существуют аналитические рамки PHP. Используете ли вы их или нет, это действительно вопрос вашего личного выбора. Записывают ли эти существующие рамки все, что вам нужно? Если нет, то могут ли они быть легко изменены? Вы можете использовать хороший существующий фреймворк и не изобретать велосипед. Лично я бы написал свой только для обучения.

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

2. Войдите в файл или MySQL

Нет абсолютно ХОРОШЕЙ ПРИЧИНЫ для входа в файл. Сначала вы войдете в файл. Затем напишите скрипт для разбора этого файла. Завтра вы решите, что хотите получить дополнительную информацию. Теперь вам нужно изменить скрипт разбора. Это будет грязно. Я понимаю, что вам не нужно использовать файл в качестве промежуточного хранилища перед базой данных. 4-5 тыс. Запросов на запись в час (я не думаю, что будет много запросов на чтение, кроме тех случаев, когда вы запрашиваете БД) - это бриз для MySQL. Кроме того, поскольку эта БД не будет использоваться для предоставления данных пользователям, вам все равно, будет ли она немного неоптимизирована. Насколько я понимаю, вы единственный, кто будет запрашивать базу данных.

EDIT: Когда вы говорили об использовании файла, я предполагал, что вы хотите использовать его как временное хранилище только до тех пор, пока вы не обработаете файл и не перенесете содержимое в БД. Если вы не имели в виду это, а вместо этого хотели постоянно хранить информацию в файлах - это было бы кошмаром. Представьте себе, что вы пытаетесь запросить определенную информацию, которая разбросана по файлам. Вам нужно не только написать сценарий, который может анализировать файлы, но и создать нетривиальный сценарий, который может запрашивать их, не загружая все содержимое в память. Это очень, очень быстро и очень ухудшит ваши способности определять тенденции в данных и т. Д.

Еще раз - 4-5К может показаться большим количеством запросов, но хорошо оптимизированная БД может справиться с этим. Запросы к разумно оптимизированной базе данных будут на величины порядка порядков быстрее, чем анализ и запрос к многочисленным файлам.

0 голосов
/ 20 марта 2012

Я бы порекомендовал использовать существующий скрипт или фреймворк. Всегда полезно использовать специализированный инструмент, в который люди вложили много времени и идей. Поскольку вы используете php Piwik , похоже, один из способов. С веб-страницы:

Piwik - это загружаемое бесплатное программное обеспечение для веб-аналитики в режиме реального времени (бесплатно / под лицензией GPLv3). Он предоставляет вам подробные отчеты о посетителях вашего сайта: поисковые системы и ключевые слова, которые они использовали, язык, на котором они говорят, ваши популярные страницы…

Piwik предоставляет API отслеживания , и вы можете отслеживать пользовательские переменные. Схема БД кажется сильно оптимизированной, посмотрите на их страницу отзывов .

...