Tomcat показывает эту ошибку «Это очень вероятно, чтобы создать утечку памяти».Как решить эту проблему? - PullRequest
3 голосов
/ 09 мая 2011

Я создал веб-приложение в Apache Cocoon. Этот веб-сайт работает правильно, но через каждые 3-4 дня он перестает отвечать. Он не работает до тех пор, пока мы не перезапустим службу tomcat. В файле catalina.2011-05-09.log отображается следующая ошибка: -

"9 мая 2011 г. 3:17:34 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: веб-приложение [/ webresources] все еще обрабатывает запрос, который еще не завершен. Это очень вероятно, чтобы создать утечку памяти. Вы можете контролировать время, необходимое для завершения запросов, используя атрибут unloadDelay стандартной реализации Context. "

Я не смог понять причину этой проблемы. Может кто-нибудь подсказать мне, как решить эту проблему?

Ответы [ 2 ]

1 голос
/ 09 мая 2011

Вы используете библиотеку, которая запускает один или несколько потоков и неправильно закрывает их или освобождает другие ресурсы, захваченные потоком.Это часто происходит с такими вещами, как компоненты Apache HTTP (я получаю эту ошибку с компонентами Http) и всем, что использует отдельные потоки внутри.Какие библиотеки вы используете в своем приложении Cocoon?

0 голосов
/ 09 мая 2011

Это говорит вам о проблеме:

 [...] is still processing a request that has yet to finish

Вам необходимо выяснить, на что направлен этот запрос.Один простой способ - установить что-то вроде PsiProbe .

Кроме того, неплохо бы перезапускать Tomcat каждую ночь.Это может помочь в устранении подобных проблем, пока вы не найдете основную причину.

...