Софт web аналитики под высокую нагрузку?

Всем привет.

Столкнулся с такой проблемой:

Есть высоко нагруженный сервис (~200 запросов / 1 сек).

— Нужно отслеживать действия пользователей, при этом логгирование должно происходить полностью в backend части (js вставки, как в Google Analytics делать нельзя).

— Должно быть API для получения статистики.

-Язык — php.

-Пользователь должен «маркироваться» уникальной кукой.


Сейчас используется Piwik. С такой нагрузкой он мягко говоря не справляется, по этому добавил кэширование запросов в Redis. С redis запросы вытягиваются php процессом в бесконечном цикле (если в кэше есть данные — достается 100), дальше через curl эмулируются запросы от пользователей. Грубо говоря параллельные запросы переводятся в последовательные. Все бы хорошо, но столкнулся с тем, что 2 процесса эмулирующие запросы не справляются со скоростью роста кэша (~1.5 дня, и оперативка будет занята). Если процессов запускать больше — общая нагрузка убивает сервер((. Сейчас переписываю логгер piwik'а, что бы уйти от http запросов по curl.


Порекомендуйте пожалуйста более легковесный аналог, который смог бы справится с подобной нагрузкой.


Заранее благодарен.
  • Вопрос задан
  • 3984 просмотра
Пригласить эксперта
Ответы на вопрос 4
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
Вам статистику в real-time смотреть чтоли? 200 rps — смешные цифры, если немного подумать над архитектурой этой затеи. Пишем логи в правильном формате, обрабатываем не в RT на отдельной машине.
Ответ написан
Комментировать
CrazySquirrel
@CrazySquirrel
Есть например kontagent(http://www.kontagent.com/), он обрабатывает инфу на своих серверах, но дорог зараза.
Ответ написан
zzr
@zzr
Можно попробовать использовать StatHat. Это не веб-аналитика per se, но можно попробовать свалить на них обработку, встраивая чарты во внутреннюю систему, а не бегая к ним. Если этап ухода данных на сторонний сервис вообще не вариант в любом виде, то, по крайней мере посмотреть на их архитектуру (начав отсюда) можно. К сожалению, как я понимаю, в opensource только отдельные куски, помимо клиентских библиотек
Ответ написан
Комментировать
sHinE
@sHinE
веб-разработчик, php/js/mysql и сопутствующее
Это на мой взгляд, совсем изврат, но посмотрите на пинбу — pinba.org В такими нагрузками она точно справится и там есть возможность логировать свои данные. Вот только статистику по ним обрабатывать придется руками по большей части.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы