powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Оптимизация приложения.
6 сообщений из 6, страница 1 из 1
Оптимизация приложения.
    #39008729
student42
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый!
Опыта в анализе узких мест и оптимизация приложений разработанных на java - нет.
Тем не менее сейчас поставлена задача разобраться почему приложение тормозит.
Сервер приложений weblogic в качестве jvm используем Jrockit;

Проблема: Процесс выжырает всю память после чего приложение недоступно.

Вопрос: как можно выяснить какой тред в рамках процесса нажрался памяти и сколько съел?
...
Рейтинг: 0 / 0
Оптимизация приложения.
    #39008742
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
student42какой тред
а от треда к куску кода как перейдёшь?
...
Рейтинг: 0 / 0
Оптимизация приложения.
    #39008744
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
student42Опыта в анализе узких мест и оптимизация приложений разработанных на java - нет.

Рекомендую доклад в нескольких частях
httpы://www.youtube.com/watch?v=ulWWSKr0Ce0
student42Сервер приложений weblogic в качестве jvm используем Jrockit;

Тогда возможно доступны продвинутые инструменты анализа работы системы:
http://www.oracle.com/technetwork/java/javaseproducts/mission-control/java-mission-control-1998576.html

student42Проблема: Процесс выжырает всю память после чего приложение недоступно.

Звучит как Memory Leak. Снимаем дамп памяти любым профайлером и анализируем.
Если размер кучи не сильно большой - 1-2 Гб, то можно взять jvisualvm из JDK
Для больших куч, лучше пользовать комерческие профайлеры JProfiler и YourKit

student42Вопрос: как можно выяснить какой тред в рамках процесса нажрался памяти и сколько съел?
В Java объекты хранятся в общей куче aka Heap. Сами потоки используют относительно не много памяти под стек, поэтому такой подход не используется. Да, и на сервере, потоки выполняют сходный рантайм, поэтому к отдельному потоку привязки особой нет.

Снимаем дамп памяти, смотрим какие типы сколько памяти занимают и обращаем внимание на количество экземпляров. Находим те что в памяти быть не должны, и средствами профайлера ищем как они связаны с GC Roots.
Распространенная утечка памяти на серверах это незакрытые JDBC ресурсы (Statement/ResultSet).
...
Рейтинг: 0 / 0
Оптимизация приложения.
    #39009027
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема: Процесс выжырает всю память после чего приложение недоступно.

Так память тячёт, очевидно же ж...

Вопрос: как можно выяснить какой тред в рамках процесса нажрался памяти и сколько съел?

visualvm же ж ... дампы памяти и всё такое.
...
Рейтинг: 0 / 0
Оптимизация приложения.
    #39009705
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
student42Вопрос: как можно выяснить какой тред в рамках процесса нажрался памяти и сколько съел?
Тебе имя треда может ничего не дать. Он может быть служебным. К примеру относящимся
к технологиям Orm, пулов коннектов. И что ты будешь дальше с этим знанием делать?
...
Рейтинг: 0 / 0
Оптимизация приложения.
    #39009787
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonИ что ты будешь дальше с этим знанием делать?
Есть на кого свалить. :-)
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Оптимизация приложения.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]