Apr 13, 2011 08:48
Нужен совет как правильно сделать такую казалось бы простую штуку как счетчик.
Задача классическая: считаем заходы на страницах сайтов и представляем владельцам базовую информацию (сколько, браузеры, страны и тп)
Как я понимаю, технически задача состоит из 2х частей:
1. Сам счетчик (условно это картинка, которая грузится с моего хоста) - логирование запросов в буфер.
2. База (не хотелось бы отрываться от mysql как части уже готового сервиса) - где все храним.
раз в минуту запускается скрипт, который берет буфер, собирает из этого пару десятков запросов и добавляет в базу.
И тут возникает целая куча вопросов.
Куда буфер ?
в файл - глупо, локи, скоростть и тд
мемкеш\apc и прочие sared memory - как ? в 1 ИД - опять же надо как-то релизовывать локи да и падает сильно скорость если большие объемы данные дописывать ? в отдельный ид каждый хит ?
основная база : проводить денормализацию ? условно таблица 1 с разбивкой по часам за сегодня
таблица 2 с разбивкой по дням и переливание из 1 в 2 в конце дня ?
даже простой подсчет показывает, что размер базы будет расти ударными темпами.
Ткните где почитать плз.
Заранее спасибо.