Несмотря на внешнюю простоту проекта, в нем сконцентрированы годы работы над крупными сервисами, бессонные ночи в поиске проблемных мест, падающие сервера, "висящие" процессы, таинственные проблемы в коде и множество шишек набитых в попытках их найти. И нам верится, что этот опыт будет полезен другим в виде готового продукта.
PRFLR Team
PRFLR - это сервис помогающий анализировать быстродействие ваших приложений написанных на Java, PHP, GO, ObjectC, Perl, Python, C#, Node.js или C++ realtime и прямо в production режиме.
Для этого вы регистрируетесь в сервисе, интегрируете в свое приложение наше SDK и тут же получаете доступ к данным по производительности вашего приложения.
В первую очередь PRFLR ориентирован на высоконагруженные серверные приложения работающие на больших кластерах, однако применим для небольших проектов, десктоп и мобильных приложений. Конечно если вас действительно волнует вопрос их быстродействия.
PRFLR - это сервис аналитики, направленный на скорейшее обнаружения проблемных по производительности мест в работе приложений. Realtime и непосредственно на production серверах. Предназначена для использования в связке с системой мониторинга.
PRFLR - не мониторит железо, не строит графики, не собирает логи. Он делает одну простую вещь, помогает найти "бутылочные горлышки" в коде прямо в production. И ориентирован на большие распределенные кластеры серверов.
PRFLR включает в себя:
- SDK под множество языков;
- няшный web-based UI для анализа данных;
Скоро появится:
- плагин для трансляции данных в системы мониторинга серверов типа Zabbix, Munin и Nagios.
- графики распределения времени таймера, для более точного анализа
- снапшоты состояния системы для сравнительного анализа по времени
Отправка данных идет по UDP протоколу и не сказывается на быстродействии приложений. В зависимости от языка приложения, 1000 таймеров отправляются примерно за 35ms, что позволяет досконально покрыть код таймерами даже в очень крупной HiLoad системе.
Все вышеперечисленное доступно прям сейчас и бесплатно. Для коммерческого использования планируется создать специальный план включающий:
- График распределения времени выполнения таймера по частотности
- Трансляция агрегированных данных в Zabbix для комплексного мониторинга приложений
- Увеличенный объем хранимых данных
- Кнопка "Вот щас кайфово!" - по настоящему крутой функционал не имеющий аналогов. Обучая систему ситуациям, когда что то идет не так и ситуациям когда все хорошо, вы будете получать уведомления при отклонении общего состояния системы от допустимого.
Done
- PHP Native
- PHP Yii Framework Extension
- Android Library
- ObjectC
- GOLang
Beta versions
- Java
- Python 2/3
- Node.js
- Perl
- С++
- C#
InProgress
- Ruby
TODO
- .NET
- Erlang
- 1С
How to create SDK for your favorite language: https://github.com/PRFLR/SDK/wiki/How-to-make-SDK-for-you-favorite-language