Boa tarde pessoal,
Estou trabalhando com uma aplicação web com wervidor websphere.
Suspeitamos que existe um problema com o tamanho da sessão de cada usuário (pode estar chegando a 4MB).
Gostaria de uma ajuda para saber como posso controlar o tamanho do objeto da sessão. Não preciso de nenhuma outra informação. Apenas o tamanho da mesma.
Exemplo: vou testar a aplicação desde o login até uma funcionalidade final e gostaria de saber o quanto de memória a sessão esta utilizando conforme a utilização.
packagebr.com.michaelnascimento.javaagentsample;importjava.lang.instrument.Instrumentation;importjava.util.Calendar;publicclassObjectSizeCalculator{privatestaticInstrumentationinstrumentation;publicstaticvoidpremain(StringagentArgs,Instrumentationinst){instrumentation=inst;}privatestaticlongsizeOf(Objecto){returninstrumentation.getObjectSize(o);}publicstaticvoidmain(String[]args){System.out.println("Size of Object: "+sizeOf(newObject()));System.out.println("Size of direct subclass: "+sizeOf(newObjectSizeCalculator()));System.out.println("Size of String \"size\": "+sizeOf("size"));System.out.println("Size of Calendar: "+sizeOf(Calendar.getInstance()));}}
obrigado rafael…
mas criei essa classe porém não consegui implementa-la na minha aplicação…
como o método sizeOf é static, tenti utilizar da seguinte forma: