Наше приложение требует очень большой памяти, поскольку оно имеет дело с очень большими данными. Следовательно, мы увеличили максимальный размер кучи до 12 ГБ (-Xmx).
Ниже приведены сведения об окружающей среде
OS - Linux 2.6.18-164.11.1.el5
JBoss - 5.0.0.GA
VM Version - 16.0-b13 Sun JVM
JDK - 1.6.0_18
Мы имеем выше env и конфигурации в нашем QA и prod. В QA мы имеем максимальный PS Old Gen (память кучи), выделенный как 8.67GB, тогда как в Prod это всего 8GB.
В Prod для конкретной работы Old Gen Heap достигает 8 ГБ, висит там, и веб-URL становится недоступным. Сервер опускается. Но в QA также он достигает 8,67 ГБ, но выполняется полный GC, и он возвращается на 6.5 ГБ или что-то в этом роде. Здесь его не повесили.
Мы не смогли найти решение для этого, потому что и среда, и конфигурация на обоих блоках одинаковы.
У меня здесь 3 вопроса,
2/3-я максимальная куча будет выделена старый/пожизненный ген. Если это так почему это 8 ГБ в одном месте и 8,67 ГБ в другом месте?
Как обеспечить допустимый коэффициент для New и Владение в этом случае (12 ГБ)?
Почему он заполнен GCed в одном месте и не в другом?
Любая помощь будет действительно заметна. Спасибо.
Pls сообщит мне, если вам нужна дополнительная информация по env или conf.