Soumettre la recherche
Mettre en ligne
Jinba - frontendconf.ru/2015
•
Télécharger en tant que PPTX, PDF
•
7 j'aime
•
2,563 vues
Pavel Dovbush
Suivre
My talk at http://frontendconf.ru/2015/abstracts/1777
Lire moins
Lire la suite
Ingénierie
Signaler
Partager
Signaler
Partager
1 sur 47
Télécharger maintenant
Recommandé
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Ontico
мониторинг производительности Web приложений на python
мониторинг производительности Web приложений на python
Slach
Ровная балансировка нагрузки на фронтенд-кластере
Ровная балансировка нагрузки на фронтенд-кластере
Badoo Development
Сага о кластере. Все что вы хотели знать про горизонтальное масштабирование в...
Сага о кластере. Все что вы хотели знать про горизонтальное масштабирование в...
Ontico
"Успеть за 100 миллисекунд: контекстная реклама на Sphinx" Дмитрий Хасанов (...
"Успеть за 100 миллисекунд: контекстная реклама на Sphinx" Дмитрий Хасанов (...
AvitoTech
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix
OpenResty: превращаем NGINX в полноценный сервер приложений / Владимир Прота...
OpenResty: превращаем NGINX в полноценный сервер приложений / Владимир Прота...
Ontico
Доменно специфичные базы данных и рассылка Aviasales, Борис Каплуновский (Avi...
Доменно специфичные базы данных и рассылка Aviasales, Борис Каплуновский (Avi...
Ontico
Recommandé
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Ontico
мониторинг производительности Web приложений на python
мониторинг производительности Web приложений на python
Slach
Ровная балансировка нагрузки на фронтенд-кластере
Ровная балансировка нагрузки на фронтенд-кластере
Badoo Development
Сага о кластере. Все что вы хотели знать про горизонтальное масштабирование в...
Сага о кластере. Все что вы хотели знать про горизонтальное масштабирование в...
Ontico
"Успеть за 100 миллисекунд: контекстная реклама на Sphinx" Дмитрий Хасанов (...
"Успеть за 100 миллисекунд: контекстная реклама на Sphinx" Дмитрий Хасанов (...
AvitoTech
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Zabbix
OpenResty: превращаем NGINX в полноценный сервер приложений / Владимир Прота...
OpenResty: превращаем NGINX в полноценный сервер приложений / Владимир Прота...
Ontico
Доменно специфичные базы данных и рассылка Aviasales, Борис Каплуновский (Avi...
Доменно специфичные базы данных и рассылка Aviasales, Борис Каплуновский (Avi...
Ontico
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Tanya Denisyuk
Open Source SQL-базы данных вступили в эру миллионов запросов в секунду / Фед...
Open Source SQL-базы данных вступили в эру миллионов запросов в секунду / Фед...
Ontico
Архитектура поиска в Avito / Андрей Смирнов (Avito)
Архитектура поиска в Avito / Андрей Смирнов (Avito)
Ontico
Near-realtime аналитика событий в высоконагруженном проекте
Near-realtime аналитика событий в высоконагруженном проекте
Alexandr Krasheninnikov
Андрей Федоренчик- «Высоконагруженная система с аналитикой на InfoBright»
Андрей Федоренчик- «Высоконагруженная система с аналитикой на InfoBright»
Tanya Denisyuk
мониторинг производительности приложения на PINBA
мониторинг производительности приложения на PINBA
Slach
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Tanya Denisyuk
Борис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ru
Ontico
Юрий Насретдинов, Badoo
Юрий Насретдинов, Badoo
Ontico
Веб-разработка без наркотиков с помощью PostgreSQL, Nginx и c2h5oh / Миша Кир...
Веб-разработка без наркотиков с помощью PostgreSQL, Nginx и c2h5oh / Миша Кир...
Ontico
Эволюция клиентской разработки: от веба ко "всеобщей мобилизации” или mobile-...
Эволюция клиентской разработки: от веба ко "всеобщей мобилизации” или mobile-...
Pavel Dovbush
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Ontico
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Tanya Denisyuk
Pinboard + pinba / Как организовать мониторинг сотни PHP-проектов (Devconf 2014)
Pinboard + pinba / Как организовать мониторинг сотни PHP-проектов (Devconf 2014)
Ilyas Salikhov
Разработка real-time приложений с RethinkDB / Илья Вербицкий (Независимый кон...
Разработка real-time приложений с RethinkDB / Илья Вербицкий (Независимый кон...
Ontico
Zabbix v2
Zabbix v2
Alex Nikitin
переезд мониторинга
переезд мониторинга
Алексей Демидов
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)
Ontico
Андрей Светлов-«Делаем своё решение для оптимальной загрузки кластера»
Андрей Светлов-«Делаем своё решение для оптимальной загрузки кластера»
Tanya Denisyuk
Building a maintainable bi-directional cross platform protocol
Building a maintainable bi-directional cross platform protocol
Pavel Dovbush
Pavel Dovbush Toster
Pavel Dovbush Toster
Pavel Dovbush
Эволюция клиентской разработки от веба ко всеобщей мобилизации или mobile-fir...
Эволюция клиентской разработки от веба ко всеобщей мобилизации или mobile-fir...
Ontico
Contenu connexe
Tendances
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Tanya Denisyuk
Open Source SQL-базы данных вступили в эру миллионов запросов в секунду / Фед...
Open Source SQL-базы данных вступили в эру миллионов запросов в секунду / Фед...
Ontico
Архитектура поиска в Avito / Андрей Смирнов (Avito)
Архитектура поиска в Avito / Андрей Смирнов (Avito)
Ontico
Near-realtime аналитика событий в высоконагруженном проекте
Near-realtime аналитика событий в высоконагруженном проекте
Alexandr Krasheninnikov
Андрей Федоренчик- «Высоконагруженная система с аналитикой на InfoBright»
Андрей Федоренчик- «Высоконагруженная система с аналитикой на InfoBright»
Tanya Denisyuk
мониторинг производительности приложения на PINBA
мониторинг производительности приложения на PINBA
Slach
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Tanya Denisyuk
Борис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ru
Ontico
Юрий Насретдинов, Badoo
Юрий Насретдинов, Badoo
Ontico
Веб-разработка без наркотиков с помощью PostgreSQL, Nginx и c2h5oh / Миша Кир...
Веб-разработка без наркотиков с помощью PostgreSQL, Nginx и c2h5oh / Миша Кир...
Ontico
Эволюция клиентской разработки: от веба ко "всеобщей мобилизации” или mobile-...
Эволюция клиентской разработки: от веба ко "всеобщей мобилизации” или mobile-...
Pavel Dovbush
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Ontico
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Tanya Denisyuk
Pinboard + pinba / Как организовать мониторинг сотни PHP-проектов (Devconf 2014)
Pinboard + pinba / Как организовать мониторинг сотни PHP-проектов (Devconf 2014)
Ilyas Salikhov
Разработка real-time приложений с RethinkDB / Илья Вербицкий (Независимый кон...
Разработка real-time приложений с RethinkDB / Илья Вербицкий (Независимый кон...
Ontico
Zabbix v2
Zabbix v2
Alex Nikitin
переезд мониторинга
переезд мониторинга
Алексей Демидов
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)
Ontico
Андрей Светлов-«Делаем своё решение для оптимальной загрузки кластера»
Андрей Светлов-«Делаем своё решение для оптимальной загрузки кластера»
Tanya Denisyuk
Tendances
(19)
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Open Source SQL-базы данных вступили в эру миллионов запросов в секунду / Фед...
Open Source SQL-базы данных вступили в эру миллионов запросов в секунду / Фед...
Архитектура поиска в Avito / Андрей Смирнов (Avito)
Архитектура поиска в Avito / Андрей Смирнов (Avito)
Near-realtime аналитика событий в высоконагруженном проекте
Near-realtime аналитика событий в высоконагруженном проекте
Андрей Федоренчик- «Высоконагруженная система с аналитикой на InfoBright»
Андрей Федоренчик- «Высоконагруженная система с аналитикой на InfoBright»
мониторинг производительности приложения на PINBA
мониторинг производительности приложения на PINBA
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Антон Щербаков, Отказоустойчивость на примере aviasales — почему даже если на...
Борис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ru
Юрий Насретдинов, Badoo
Юрий Насретдинов, Badoo
Веб-разработка без наркотиков с помощью PostgreSQL, Nginx и c2h5oh / Миша Кир...
Веб-разработка без наркотиков с помощью PostgreSQL, Nginx и c2h5oh / Миша Кир...
Эволюция клиентской разработки: от веба ко "всеобщей мобилизации” или mobile-...
Эволюция клиентской разработки: от веба ко "всеобщей мобилизации” или mobile-...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Pinboard + pinba / Как организовать мониторинг сотни PHP-проектов (Devconf 2014)
Pinboard + pinba / Как организовать мониторинг сотни PHP-проектов (Devconf 2014)
Разработка real-time приложений с RethinkDB / Илья Вербицкий (Независимый кон...
Разработка real-time приложений с RethinkDB / Илья Вербицкий (Независимый кон...
Zabbix v2
Zabbix v2
переезд мониторинга
переезд мониторинга
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)
Путь от монолита на PHP к микросервисам на Scala / Денис Иванов (2GIS)
Андрей Светлов-«Делаем своё решение для оптимальной загрузки кластера»
Андрей Светлов-«Делаем своё решение для оптимальной загрузки кластера»
En vedette
Building a maintainable bi-directional cross platform protocol
Building a maintainable bi-directional cross platform protocol
Pavel Dovbush
Pavel Dovbush Toster
Pavel Dovbush Toster
Pavel Dovbush
Эволюция клиентской разработки от веба ко всеобщей мобилизации или mobile-fir...
Эволюция клиентской разработки от веба ко всеобщей мобилизации или mobile-fir...
Ontico
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Badoo Development
Docker в работе: взгляд на использование в Badoo через год
Docker в работе: взгляд на использование в Badoo через год
Badoo Development
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Ontico
En vedette
(6)
Building a maintainable bi-directional cross platform protocol
Building a maintainable bi-directional cross platform protocol
Pavel Dovbush Toster
Pavel Dovbush Toster
Эволюция клиентской разработки от веба ко всеобщей мобилизации или mobile-fir...
Эволюция клиентской разработки от веба ко всеобщей мобилизации или mobile-fir...
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Реалтайм статистика скорости работы нативных и веб-приложений у реальных поль...
Docker в работе: взгляд на использование в Badoo через год
Docker в работе: взгляд на использование в Badoo через год
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Similaire à Jinba - frontendconf.ru/2015
Успеть за 100 миллисекунд контекстная реклама на Sphinx / Дмитрий Хасанов (Av...
Успеть за 100 миллисекунд контекстная реклама на Sphinx / Дмитрий Хасанов (Av...
Ontico
Scorex framework
Scorex framework
Dmitry Meshkov
Система мониторинга производительности своими руками (QA Fest 2016)
Система мониторинга производительности своими руками (QA Fest 2016)
Alexander Nedeliaev
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
QAFest
Вячеслав Смирнов - Инструменты нагрузочного тестирования
Вячеслав Смирнов - Инструменты нагрузочного тестирования
Elias Fofanov
Little Service in 2h
Little Service in 2h
Alexei Yuzhakov
Иван Карев — Клиентская оптимизация
Иван Карев — Клиентская оптимизация
Yandex
Zabbix в сервисной компании ОНЛАНТА - Zabbix Meetup Moscow
Zabbix в сервисной компании ОНЛАНТА - Zabbix Meetup Moscow
Vadim Nesterov
Building deployment pipeline - DevOps way
Building deployment pipeline - DevOps way
Andrey Rebrov
Introduction in Node.js (in russian)
Introduction in Node.js (in russian)
Mikhail Davydov
Cовременный станок верстальщика
Cовременный станок верстальщика
mcslayer
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Yandex
разработка Metro style приложений
разработка Metro style приложений
Олег Винников
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Ontico
Как 100 000 раз в секунду выбирать правильный рекламный материал? Programmati...
Как 100 000 раз в секунду выбирать правильный рекламный материал? Programmati...
Ontico
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
Ontico
Иван Карев — Клиентская оптимизация
Иван Карев — Клиентская оптимизация
Yandex
Обзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий Насретдинов
Ontico
Модульность и управляемая многопоточность встраиваемых С++ приложений - трудн...
Модульность и управляемая многопоточность встраиваемых С++ приложений - трудн...
corehard_by
Sqadays 2010 burmistrov_fomin_20101120(2)
Sqadays 2010 burmistrov_fomin_20101120(2)
Alexei Lupan
Similaire à Jinba - frontendconf.ru/2015
(20)
Успеть за 100 миллисекунд контекстная реклама на Sphinx / Дмитрий Хасанов (Av...
Успеть за 100 миллисекунд контекстная реклама на Sphinx / Дмитрий Хасанов (Av...
Scorex framework
Scorex framework
Система мониторинга производительности своими руками (QA Fest 2016)
Система мониторинга производительности своими руками (QA Fest 2016)
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
Вячеслав Смирнов - Инструменты нагрузочного тестирования
Вячеслав Смирнов - Инструменты нагрузочного тестирования
Little Service in 2h
Little Service in 2h
Иван Карев — Клиентская оптимизация
Иван Карев — Клиентская оптимизация
Zabbix в сервисной компании ОНЛАНТА - Zabbix Meetup Moscow
Zabbix в сервисной компании ОНЛАНТА - Zabbix Meetup Moscow
Building deployment pipeline - DevOps way
Building deployment pipeline - DevOps way
Introduction in Node.js (in russian)
Introduction in Node.js (in russian)
Cовременный станок верстальщика
Cовременный станок верстальщика
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Евгений Батовский, Николай Птущук "Современный станок верстальщика"
разработка Metro style приложений
разработка Metro style приложений
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Как 100 000 раз в секунду выбирать правильный рекламный материал? Programmati...
Как 100 000 раз в секунду выбирать правильный рекламный материал? Programmati...
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
55+1 прием для улучшения Javascript-кода / Татьяна Бабич (Simbirsoft)
Иван Карев — Клиентская оптимизация
Иван Карев — Клиентская оптимизация
Обзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий Насретдинов
Модульность и управляемая многопоточность встраиваемых С++ приложений - трудн...
Модульность и управляемая многопоточность встраиваемых С++ приложений - трудн...
Sqadays 2010 burmistrov_fomin_20101120(2)
Sqadays 2010 burmistrov_fomin_20101120(2)
Jinba - frontendconf.ru/2015
1.
Реалтайм статистика скорости
работы нативных и веб-приложений у реальных пользователей Pavel Dovbush @
2.
RUM Real User Monitoring Реальный
UX
3.
● DOMContentLoaded, onLoad ●
W3C Navigation Timing ● W3C Resource Timing ● W3C User Timing ● Нативные приложения Что
4.
W3C Navigation Timing
5.
W3C Resource Timing
6.
Load time -
32s
7.
UX vs. onLoad source
8.
Что такое UX? VS.
9.
● performance.mark(name) ● performance.measure(name,
mark1, mark2) W3C User Timing
10.
WebSite hit
11.
WebApp hit
12.
Android hit
13.
Как собрать данные? Специализированные Всё-в-одном
14.
Собираем сами WEB cluster Хранилищ е Графики Приложение
15.
github.com/dpp-name/jinba tiny.cc/jinba Jinba
16.
● Микро-библиотека ○ JavaScript ○
Android ○ iOS ○ Windows phone ● Набор соглашений ● Инфраструктура ○ Сбор ○ Визуализация ○ Аналитика Jinba
17.
npm install jinba-js-client var
Jinba = require('jinba-js-client'); var r = new Jinba.Request(location.pathname, { app_label: 'example' }); r.startMeasurement('some-id', 'init'); doInit(function callback() { r.stopMeasurement('some-id'); }); r.end(); Пример
18.
[ { name:
'/', value: 321, tags: { app_label: 'example', errorStatus: 0 }, measurements: [ { name: 'init', value: 275 }, …. { name: 'foo-1', value: 0 }, { name: 'bar-2', value: 17 }, …. Данные
19.
● Отфильтровать мусор ●
Защитить от паразитного трафика ● Записать в хранилище ● Как можно быстрее! Прием данных
20.
● Быстрая вставка ●
Разные “срезы” ● Возможность считать перцентили ● Хранить данные годами Требования к хранилищу
21.
● MySQL ● Syslog ●
Hadoop ● InfluxDB ● StatsD Хранилище
22.
● MySQL engine ●
Данные в памяти (за N минут) ● UDP вставка ● Отчеты по тэгам ● Реалтайм! pinba.org
23.
● tagN_info -
отчеты по многим тэгам ● Перцентили ● Гистограммы ● Фильтрация по тегам реквеста Pinba для Jinba
24.
Pinba 1.4M 25K RPS TPS
25.
CREATE TABLE v2_jinba_country
( ... ) ENGINE=PINBA COMMENT='tagN_info:timer,mode,country::75,95'; pinbaSchema.createReport({ mysqlClient: mysqlClient, tablePrefix: 'v2_jinba', name: 'country', tags: ['timer', 'mode', 'country'] }); Создание отчета
26.
mysql> desc v2_jinba_country; +--------------+--------------+ |
Field | Type | +--------------+--------------+ | timer | varchar(64) | | mode | varchar(64) | | country | varchar(64) | | req_count | int(11) | | req_per_sec | float | | hit_count | int(11) | | hit_per_sec | float | | timer_value | float | | timer_median | float | | index_value | varchar(256) | | p75 | float | | p95 | float | +--------------+--------------+ Создание отчета
27.
mysql> select timer,
mode, hit_per_sec, timer_value/hit_count as timer_avg, timer_median, p75, p95 from v2_jinba where mode='webapp-badoo' and timer='usable' G *************************** 1. row *************************** timer: usable mode: webapp-badoo hit_per_sec: 739.025 timer_avg: 0.898577200534488 timer_median: 0.589789 p75: 0.854372 p95: 2.18598 Создание отчета
28.
Гистограмма % of hits time
29.
● Pinba -
последние 5 - 10 - 15 минут ● История - RRD (в перспективе InfluxDB) Хранение истории
30.
pinba2influxdb createDB(influxClient, dbName) selectData(mysqlClient, dbName,
tags) insertData(influxClient, dbName, result) InfluxDB
31.
Как рисовать?
32.
grafanaUtils createReportDashboard(url, grafanaKey, schema,
name) "domain_country": { "rows_by": "timer", "tags": [ "mode", "timer", "domain", "country" ] } Grafana
33.
Как рисовать?
34.
Что получилось ➔ JinbaClient ➔
JinbaServer ➔ Pinba ➔ JinbaScripts ➔ InfluxDB ➔ Grafana
35.
● Тип запроса ●
Таймер ● Страница / Экран ● Страна ● Браузер / Устройство Аналитика
36.
● Тип запроса ●
Таймер ● Страница / Экран ● Страна ● Браузер / Устройство Аналитика 9 31 40 50 10 5.5 M
37.
WebSite
38.
WebApp
39.
Android
40.
Среднее и перцентили
41.
Результаты оптимизации
42.
Последствия редизайна
43.
Сравнение стран
44.
Сравнение браузеров
45.
Сравнение страниц
46.
● Только вы
можете определить `usable` ● Юзабилити важнее технических метрик ● Не смешивайте типы запросов ● Выделяйте общие группы ● Перцентили, а не среднее Итого
47.
Павел Довбуш <dpp@dpp.su> Jinba github.com/dpp-name/jinba Pinba http://pinba.org/ Вопросы?
Télécharger maintenant