Софт 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 В такими нагрузками она точно справится и там есть возможность логировать свои данные. Вот только статистику по ним обрабатывать придется руками по большей части.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы