1

Приложение My Grails развернуто в Tomcat 6 в экземпляре AWS EC2. Проблема, с которой я сталкиваюсь, заключается в том, что она не может запускаться и продолжать получать ошибку: OutOfMemoryError: невозможно создать новый собственный поток. Когда я запускал VisualVM, кажется, что было создано много потоков, около 1000+. Я не очень хорошо знаком с этим инструментом и не могу определить, в какой части моего кода создается столько потоков. Одна вещь, которую я заметил, заключается в том, что когда я отключил спящий режим кэша второго уровня или изменил net.sf.ehcache.hibernate.EhCacheProvider на net.sf.ehcache.hibernate.SingletonEhCacheProvider, количество потоков значительно уменьшилось. Есть ли инструмент, который может в основном помочь мне определить, где в моем коде вызывает значительное увеличение создания потоков?OutOfMemoryError: не удалось создать новый собственный поток AWS

+0

Вы используете эластичный бобовый стебель? – Sap

ответ

0

Необходимо увеличить объем памяти. Перейти в bin/setclasspath.sh вашего кота и добавьте следующую строку в конце:

export CATALINA_OPTS="-Xmx1024m -XX:MaxPermSize=512m" 

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

export CATALINA_OPTS="-Xmx512m -XX:MaxPermSize=256m" 

Но это зависит от размера вашего приложения.

Смежные вопросы