![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
Имеется такой неприятный глючок: вебсайт на Томкате периодически вычерпывает всю память, начинает выкидывать OutOfMemoryError, а потом и вовсе становится колом. Приходится перезапукскать.
Самое смешное, что когда я нагружаю вебсайт "нагрузчиком", он прекрасно справляется и держит нагрузку как стойкий оловянный солдатик. У меня даже JCrawler сломался на пятой тысяче запросов, а сайту хоть бы хны. Между тем в реале сайт зависает пару раз в день, причем от рестарта до зависания происходит всего лишь пара сотен обращений к серверу (к динамической его части, где генерится контент). С учетом всего сказанного, у меня возникло предположение, что дело, скорее всего, в какой-то побочной функциональности: может, в статике, может, браузерный mp3-плейер не отпускает открытый файл, а может где-то треды бегают и держат свои ресурсы. Вопрос: как вычислить виновника, учитывая, что дело происходит на уделенном сервере, доступ к которому только через терминал (SSH) и FTP. ЗЫ. Профайлером на локальном компе смотрел, никакой утечки не обнаружил. -------------------- "If you want something done right, do it yourself" По секрету: выучить английский - реально! |
|||
|
||||
| necromancer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 317 Регистрация: 26.7.2006 Где: Москва Репутация: 6 Всего: 7 |
Может много памяти кушают пользовательские сессии?
Ты когда нагружаешь нагрузкой пересоздаешь сессии или конектишься к одной и той же. -------------------- С уважением, Виталий Смык ---------------------------------------------------------------------------------------------- SCJP, SCWCD, OCA http://dev.maryno.net/video/ |
|||
|
||||
| Maksym |
|
|||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 24 Всего: 62 |
Stampede
Можно сделать memory dump, забрать его и посмотреть HeapAnalizer'ом. Добавлено через 40 секунд правильное название HeapAnalyzer |
|||
|
||||
| Shurr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 24.10.2006 Репутация: 1 Всего: 7 |
Stampede
А в какой области памяти падает OutOfMemoryError? Полный стектрейс не покажешь? |
|||
|
||||
| Stampede |
|
||||||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
necromancer, Maksym, Shurr - спасибо за участие. Борьба с мемори ликом продолжается. Возможно, есть некоторые подвижки, но полной уверенности пока нет.
Очень хороший вопрос. Но ответ гораздо проще: я вообще без надобности не создаю сессии. И лишь когда посетитель что-то постит, в этот момент сессия и создается. Так что на застревание данных в сессиях я не грешу.
Именно так и делаю. За прогу спасибо, не знал. Пока ничего вразумительного откопать не удалось. Но наметились кое-какие подозреваемые. Пытаюсь вырубать их одного за другим. По ходу открываю для себя интересные вещи (например, про commons-logging, который зашит в Томкате). Посмотрим, что получится.
Да в общем практически всегда в одном и том же месте - на наиболее памятеемкой операции, формировании выходного текста путем слияния контекста с шаблоном. Но проблема не в самой этой операции, а в том, что какой-то гад к этому моменту заныкал себе большой кусок памяти и никак не хочет отдавать обратно. В общем, продолжение следует. -------------------- "If you want something done right, do it yourself" По секрету: выучить английский - реально! |
||||||
|
|||||||
| Shurr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 24.10.2006 Репутация: 1 Всего: 7 |
Stampede
Попробуй включить лог сборки мусора, возможно он поможет выявить утечку. |
|||
|
||||
| Maksym |
|
||||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 24 Всего: 62 |
Stampede
Там должно быть довольно четко видно кто сколько схавал..
А Velocity нигде случайно не грешит такими вещами. Это сообщение отредактировал(а) Maksym - 11.12.2008, 14:08 |
||||
|
|||||
| Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
Все, эпопея завершена. Глюк пофиксен. Подробности - здесь.
ЗЫ: Maksym получает плюса за подталкивание изучения вопроса в правильном направлении. necromancer - за привлечение внимания к интересному аспекту нагрузочного тестирования. ЗЗЫ: Всем остальным - спасибо за внимание! -------------------- "If you want something done right, do it yourself" По секрету: выучить английский - реально! |
|||
|
||||
| Kangaroo |
|
|||
|
AA - Aussie Animal ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2042 Регистрация: 7.10.2006 Где: US Репутация: 14 Всего: 104 |
А можно посмотреть на эту выстраданную строчку? -------------------- Lost.... |
|||
|
||||
| Asal |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 26.12.2006 Где: Минск Репутация: 4 Всего: 7 |
Поздравляю ! Вот только вопрос: поделиться той строчкой кода, которая все решила, можешь ? И где можно глянуть на Breeze, интересно стало |
|||
|
||||
| Maksym |
|
|||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 24 Всего: 62 |
Stampede
Memory Analysis - вещь. |
|||
|
||||
| Asal |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 288 Регистрация: 26.12.2006 Где: Минск Репутация: 4 Всего: 7 |
у меня эта вещь не запустилась, при 2 гигах оперативы, ругнулась: "Не могу выделить нужное количество памяти" |
|||
|
||||
| COVD |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 4 Всего: 43 |
И чей же это "глюк". Неужели Томката?
|
||||
|
|||||
| Kangaroo |
|
|||
|
AA - Aussie Animal ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2042 Регистрация: 7.10.2006 Где: US Репутация: 14 Всего: 104 |
Есть надежда, что сейчас мы получим долгожданный ответ -------------------- Lost.... |
|||
|
||||
| Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
Есть такая буква - получайте Добавлено: куча подробностей, скриншоты, сниппеты, раздел "благодарности". Там же ответы на все вопросы, которые поднимались в обсуждении. Давай мыло, что-нибудь придумаем. Вполне мог быть и Томката. Такое в истории случалось не раз. И потом, я разве что-то говорил, что грешу именно на него? Упоминание Томката в заголовке имело целью всего лишь обозначить место действия. А если язвительное "чей же это "глюк"" - это все, что ты вынес из этой истории, то даже не знаю, что и сказать. Всем остальным - еще раз спасибо за участие! -------------------- "If you want something done right, do it yourself" По секрету: выучить английский - реально! |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |