Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

l9_nc

.pdf
Скачиваний:
15
Добавлен:
19.04.2015
Размер:
708 Кб
Скачать
☆

Пример 1

•Обследуй

•У нас нет мониторинга

•Есть проблема, но нет старых данных

•Построй гипотезу

•Если бы у нас был мониторинг, мы бы могли разобраться в проблеме

•Улучши

•Внедрить систему мониторинга

•Возьмём Hyperic HQ (или любой другой)

© 2013 NetCracker Technology Corporation Confidential

11

Пример 1

•Проверь

•Запусти тесты снова

•Обследуй

•Мониторинг показал, что один из серверов работает медленнее

‒Обрабатывает меньше запросов в секунду

‒У транзакций повысились тайм-ауты

‒Выше нагрузка на CPU

‒Упал сетевой трафик

•Улучши

•Промониторить медленный сервер

•Проверить лог-файлы

•Сколько потоков работает? Сделать дамп потоков.

© 2013 NetCracker Technology Corporation Confidential

12

Пример 1

•Построй гипотезу

•Дамп потоков показывает множество потоков, которые ожидают когда освободится для записи файл журнала

•Файл журнала содержит сообщения уровня отладки

‒(А на других серверах такого нет)

•Спец говорит: “Конфигурации идентичны, все автоматом создается Maven”

‒(Не верь никому)

•Проверь

•Заглянуть на сервер и вручную проверь конфигурацию сервера

© 2013 NetCracker Technology Corporation Confidential

13

Пример 1

•Решение

•На одном из рабочих серверов было включено журналирование в режиме отладки

•Когда отключили журналирование - скорость вернулась к старым показателям

© 2013 NetCracker Technology Corporation Confidential

14

Hyperic HQ

© 2013 NetCracker Technology Corporation Confidential

15

Hyperic HQ

•Это средство для мониторинга

•Но не средство для профилирования

•Статистические данные

•Тренды

•Отклонение в поведении

•‘Горячие’ точки

•Собирает данные о

•JVM

•JMX (Java Management eXtensions, http://www.nestor.minsk.by/sr/2005/08/sr50808.html)

•OS

http://www.opennet.ru/base/net/hyperic_hq_mon.txt.html

© 2013 NetCracker Technology Corporation Confidential

16

Альтернатива JVusualVM

© 2013 NetCracker Technology Corporation Confidential

17

Дамп потоков (Thread Dumps)

•Инструмент №2 при диагностике проблем с производительностью

•CTRL-BREAK в windows

•Kill -3 в Unix/Linux

•Jstack

•Нам вернется информация, что делают все потоки внутри виртуальной машине в данный момент

© 2013 NetCracker Technology Corporation Confidential

18

Дамп потоков (Thread Dumps)

•Несколько дампов в течении длительного промежутка времени дает хорошее представление о том, что творится внутри приложения

•Большинство операций, которые занимают много времени проявятся

•Мы увидим, на что похоже «нормальное» состояние сервера

© 2013 NetCracker Technology Corporation Confidential

19

Дамп потоков (Thread Dumps)

Куда смотреть:

•Вершина стека

•Ваш код в стеке

•Длинные (глубокие) стеки

•Блокировки (deadlocks) и другие проблемы с потоками

© 2013 NetCracker Technology Corporation Confidential

20

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]