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

l9_nc

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

Техническая поддержка программных решений 9/10 Проблемы на примере реальных приложений

Кузиков Б.О., СумГУ, 2014

© 2013 NetCracker Technology Corporation Confidential

План лекции

Комплексный подход к диагностике проблем с производительностью

© 2013 NetCracker Technology Corporation Confidential

2

Философия скорости

‘Хорошее понимание’ лучшее средство для анализа производительности

Выбирайте открытые и распространённые инструменты

Осмотрись→ построй гипотезу → улучши → проверь

‘Никому не верь’

© 2013 NetCracker Technology Corporation Confidential

3

Источники проблем для Java

Код «грузящий» CPU

Код «грузящий» IO

Код «грузящий» Память

Утечки памяти

Увеличивают время GC

Ошибки конфигурирования GC или выделения памяти для JVM

Увеличивают время GC

© 2013 NetCracker Technology Corporation Confidential

4

Производительность в Enterprise Java

80/20: 80% времени чтобы найти, 20% чтобы исправить

Много проблем с производительностью ‘Enterprise’ Java не связаны с ‘классическими’ «бутылочными горлышками» для Java

Производительность Инфраструктуры/Промежуточного слоя

Много факторов могут повлиять на производительность enterprise – приложений

(не только код)

Основные источники с производительностью:

Проблемы с много-поточностью

‘Недостаточное конфигурирование’

Проблемы связанные с сетью

Проблемы с масштабированием

© 2013 NetCracker Technology Corporation Confidential

5

Правильный подход

Понимание системы

Понимание окружения

Понимание обстановки

Поговорите с теми, кто знает

Но не верьте никому

Осмотрись, построй гипотезу, улучши, проверь

Переосмысли и повтори

© 2013 NetCracker Technology Corporation Confidential

6

Хорошее понимание

Понимание системы в целом

Знайте, как работает инфраструктура

(не только что делают компоненты, но и как они это делают)

Что спецификации Java EE говорят, как они должны работать?

© 2013 NetCracker Technology Corporation Confidential

7

Пример 1

© 2013 NetCracker Technology Corporation Confidential

8

Пример 1

Звонит клиент:

“Мы выкатили новую версию приложения, но оно стало тормознутее”

Окружение:

Sun Java 5

WebLogic Server 9.2 Cluster (3 nodes)

WebLogic Integration 9.2 Cluster (3 nodes)

Documentum Document Management

Oracle Database

Solaris OS

© 2013 NetCracker Technology Corporation Confidential

9

Пример 1

Система

Web-приложение

WebLogic-workflow

Ситуация

Новая версия установлена в окружения для тестирование производительности

Автоматические тесты производительности зафиксировали падение скорости на 30%

© 2013 NetCracker Technology Corporation Confidential

10

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