В рамках усилий по уменьшению загрузки памяти в нашем приложении мы собрали отчет hprof. Отчет включает в себя следующее:Java Grizzly занимает много памяти для буферов?
percent live alloc'ed stack class rank self accum bytes objs bytes objs trace name 1 9.42% 9.42% 57414792 219 57414792 219 373093 byte[] 2 6.45% 15.87% 39328800 300 39328800 300 367689 byte[] 8 1.74% 30.92% 10618776 81 39328800 300 367958 byte[]
Соответствующие следы:
TRACE 373093: java.nio.HeapByteBuffer.(HeapByteBuffer.java:39) java.nio.ByteBuffer.allocate(ByteBuffer.java:312) com.sun.enterprise.web.connector.grizzly.SocketChannelOutputBuffer.realWriteBytes(SocketChannelOutputBuffer.java:153) com.sun.enterprise.web.connector.grizzly.SocketChannelOutputBuffer$NIOOutputStream.write(SocketChannelOutputBuffer.java:240) TRACE 367689: java.nio.HeapByteBuffer.(HeapByteBuffer.java:39) java.nio.ByteBuffer.allocate(ByteBuffer.java:312) com.sun.enterprise.web.connector.grizzly.SocketChannelOutputBuffer.(SocketChannelOutputBuffer.java:100) com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.initialize(DefaultProcessorTask.java:436) TRACE 367958: java.nio.HeapByteBuffer.(HeapByteBuffer.java:39) java.nio.ByteBuffer.allocate(ByteBuffer.java:312) com.sun.enterprise.web.connector.grizzly.SocketChannelOutputBuffer.(SocketChannelOutputBuffer.java:100) com.sun.enterprise.web.connector.grizzly.ssl.SSLOutputBuffer.(SSLOutputBuffer.java:59)
Кто есть какие-либо идеи, почему Grizzly так ... гммм .. есть?
Спасибо!
Все это происходит на сервере Glassfish V2.1.1. – Yon