У нас есть три Windows Server 2003 с 2 ГБ ОЗУ.
Для трех серверов параметрами JVM являются:
-XX:MaxPermSize=256m
-Dcatalina.base=C:\Programmi\Apache Group\apache-tomcat-5.5.25
-Dcatalina.home=C:\Programmi\Apache Group\apache-tomcat-5.5.25
-Djava.endorsed.dirs=C:\Programmi\Apache Group\apache-tomcat-5.5.25\common\endorsed
-Djava.io.tmpdir=C:\Programmi\Apache Group\apache-tomcat-5.5.25\temp vfprintf
-Xms512m
-Xmx1024m
Несколько месяцев все работало нормально. В прошлую пятницу мы установили обновления для Windows. После перезагрузки tomcat не запускается с ошибкой:
Error occurred during initialization of VM
Could not reserve enough space for object heap
Мы уменьшили параметр -Xmx1024m до -Xmx768m, и теперь запускается tomcat. Но нам нужен больший максимальный размер кучи. Что случилось с нашими серверами? Заранее спасибо.
В моем случае после удаления KB956572 java может выделить больше памяти, чем с этим обновлением, но меньше перед установкой.
Думаю, причина проблемы описана в статье Microsoft: http://support.microsoft.com/kb/956572/en
Я нашел проблему. Я удалил обновление Windows KB956572. После первой перезагрузки tomcat нормально запустился с -Xmx1024m. Затем я снова установил обновление Windows KB956572. Новая перезагрузка: сбой при запуске tomcat с предыдущей ошибкой
Error occurred during initialization of VM
Could not reserve enough space for object heap