Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Анализ загрузки Tomcat и сеансов 
:(
    Опции темы
mbasil
Дата 2.12.2007, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 4.5.2007
Где: Москва

Репутация: 9
Всего: 13



Появилась задача периодической проверки загрузки сервера Tomcat
с последующей проверкой HTTPSession всех сеансов и освобождения
кэша в некоторых из них. 
Я предполагаю, что делать это надо с помошью JMX и MBean?
Может подскажете, ссылку на какой либо простой пример использования
или описание.
PM MAIL   Вверх
mbasil
Дата 3.12.2007, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 4.5.2007
Где: Москва

Репутация: 9
Всего: 13



Нашел переводную статью

http://www.javable.com/javaworld/06_01/03/

однако информации маловатр и изложена она весьма схематично. 
PM MAIL   Вверх
mbasil
Дата 5.12.2007, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 4.5.2007
Где: Москва

Репутация: 9
Всего: 13



Послушайте, а может я просто тупой.

Может все же есть возможность получить из сервлета простым способом список ссылок на текущие  объекты HTTPSession?

То есть просмотреть и обработать информацию сеансов из потока-таймера, запущенного из сервлета.
PM MAIL   Вверх
COVD
Дата 5.12.2007, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 26.7.2005

Репутация: 4
Всего: 43



Наверное, всего два варианта. Или сделать для своего веб приложения имплементацию HttpSessionListener, как советуют   здесь и отслеживать события открытия и закрытия сессий, и соответствующий счетчик модифицировать. Но если под томкатом бегает много приложений, то надо в каждом приложении свой лисенер регистрировать, наверное. Или делать по науке, через JMX. Пример здесь . Если пойти по ссылке из пункта "6. A complete list of all tomcat core MBeans can you find at funcspecs/mbean-names.html.", то можно увидеть таблицу доступных MBean' ов, которые надо обьявить для использования. Среди них есть PersistentManager (org.apache.catalina.session.PersistentManager) и StandardManager (org.apache.catalina.session.StandardManager) . Возможно эти два MBean (или другие) и позволят подсоединившись через браузер к томкату получить нужную информацию. А может и нет smile Если разберетесь, то расскажите, мне это тоже актуально.


Это сообщение отредактировал(а) COVD - 5.12.2007, 17:15
PM MAIL   Вверх
mbasil
Дата 7.12.2007, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 4.5.2007
Где: Москва

Репутация: 9
Всего: 13



Спасибо COVD !

К сожалению с помощью прослушивателя событий эту задачу не решить.
Что касается MBeans, попробую, к сожалению не завтра, придется эту
задачу отложить до новогодних каникул.

А вообще говоря странно, что в спецификации не предусмотрены
простые средства мониторинга и управления. К сожалению  MBeans,
видимо будут зависеть от реализации сервера.
PM MAIL   Вверх
COVD
Дата 7.12.2007, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 26.7.2005

Репутация: 4
Всего: 43



Цитата

А вообще говоря странно, что в спецификации не предусмотрены
простые средства мониторинга и управления. К сожалению  MBeans,
видимо будут зависеть от реализации сервера.


Наверное, это имеет значение только если вы пишите свои бины. Если же запустить стандартную конфигурацию Томката ( у меня 6.0.14 ) и подсоединиться к порту 8080, то увидите  welcome cтраничку томката. Там слева вверху под заголовком Администрирование две ссылки на статус и менеджер.  Томсат попросит пароль и логин менеджера и при неудачных попытках выдаст подсказку, где их надо прописать (в conf\tomcat-users.xml надо вставить две строчки и файл будет выглядеть как

Код

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="manager"/>
  <user username="..имя.." password="..пароль.." roles="manager"/>
</tomcat-users>



Там можно увидеть список всех приложений, их состояние, количество сессий, занимаемую память, версию JVM и выполнить некоторые команды. Достаточно для простого мониторинга. 


Это сообщение отредактировал(а) COVD - 7.12.2007, 18:44
PM MAIL   Вверх
mbasil
Дата 14.12.2007, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 4.5.2007
Где: Москва

Репутация: 9
Всего: 13



To   COVD

Так речь идет не об интерактивном мониторинге, а об адаптивном
автоматическом управлении работой приложения.

В частности - о периодическом, автоматическом анализе загрузки
памяти, освобождении некоторых (больших) кэшей сеансов и т.п.

Это сообщение отредактировал(а) mbasil - 14.12.2007, 11:51
PM MAIL   Вверх
COVD
Дата 14.12.2007, 17:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 26.7.2005

Репутация: 4
Всего: 43



Цитата

Так речь идет не об интерактивном мониторинге, а об адаптивном
автоматическом управлении работой приложения.

В частности - о периодическом, автоматическом анализе загрузки
памяти, освобождении некоторых (больших) кэшей сеансов и т.п.


Слово "адаптивном" вызвало у меня ностальгические чувства smile .  Ну, если встроенные средства (оптимизация gc, использование WeakReference) вас не устраивают, то написание своих MBeans наверное будет правильным решением.  Удобно для удаленного контроля одним монитором нескольких однотипных приложений. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0501 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.