Снятие дампов памяти (heap) и потоков
В некоторых очень редких случаях AggreGate Server или AggreGate Client могут перестать отвечать из-за потери доступа к памяти, 100% нагрузки на процессор или блокировки потоков. Такие ситуации наиболее вероятно могут произойти в версиях Предпросмотра AggreGate.
В большинстве случаев инженеры Tibbo решают такие вопросы через удалённое соединение с машиной, на которой запущен AggreGate. Однако если удаленный доступ ограничен, например, из-за соображений безопасности, клиентам приходится осуществлять снятие дампов потоков и памяти (heap), чтобы передать их Tibbo для последующего анализа.
Создание отслеживания стека зависшего / неотвечающего AggreGate Server или AggreGate Client
Для создания дампа потоков, использумого для диагностирования неэффективной блокировки потоков и их зависания:
1. Проверьте версию Java Runtime Environment (JRE), используемую для работы AggreGate при помощи %AggreGate Server Folder%/jre/bin/java.exe -version
2. Установите комплект разработчика Java (JDK) той же версии, что JRE, используемая на AggreGate
3. Выясните идентификатор Процесса (PID) процесса AggreGate:
Используя Task Manager в Windows
Путём запуска
ps ax|grep javaна Linux
4. Запустите %JDK Folder%/bin/jstack -l PID > stack.txt
5. Отправьте конечный файл stack.txt сотрудникам AggreGate для анализа
Создание дампа памяти (heap) AggreGate Server или AggreGate Client с высокой загрузкой памяти java
![]() | Примечание 1: Использование памяти AggreGate Server можно отследить при помощи Датчика использования памяти сервера. |
![]() | Примечание 2: Использование памяти AggreGate Client можно отследить при помощи утилиты JVisualVM, которая входит в комплект разработчика Java (JDK). |
![]() | Примечание 3: Утечку памяти можно успешно определить, если использование памяти сервера постоянно росло в течение нескольких дней и выросло до 200-300% начального использования памяти, зарегистрированного после нескольких запусков сервера. |
![]() | Примечание 4: Создание графика истории Датчик использования памяти сервера поможет ясно увидеть растущее использование памяти. |
Для создания дампа памяти, который используется для диагностирования её утечек:
1. Установите комплект разработчика Java (JDK) той же версии, что JRE, используемая на AggreGate
2. Выясните идентификатор Процесса (PID) процесса AggreGate:
Используя Task Manager в Windows
Путём запуска
ps ax|grep javaна Linux
3. Запустите команду jmap -dump:format=b,file=dump.bin PID
4. Сожмите конечный файл dump.bin и перешлите сотрудникам AggreGate для анализа
Was this page helpful?
