Articles of jvm

Fazer caches java resulta dos methods

Eu uso o JMH para especificar a complexidade da operação. Se você nunca trabalhou com a JMH, não se preocupe. A JMH apenas iniciará o método estimateOperation várias vezes e, em seguida, obterá o tempo médio. Pergunta: [narrow] este programa calculará Math.cbrt(Integer.MAX_VALUE) todas as vezes? Ou apenas calcula uma vez e retorna o resultado em […]

Devo olhar para o bytecode que é produzido por um compilador java?

No O compilador JIT pode “transformar” o bytecode em algo completamente diferente. Isso levará você a fazer uma otimização prematura. Yes Você não sabe qual método será compilado pelo JIT, então é melhor se você otimizar todos eles. Isso fará de você um programador Java melhor. Eu estou perguntando sem realmente saber (obviamente) então sinta-se […]

Matrizes em diferentes idiomas – armazene referências ou objects brutos?

Estou tentando entender como é a memory bruta em diferentes idiomas ao usar uma matriz. Considere o seguinte código Java: String a = “hi”; String b = “there”; String c = “everyone”; String[] array = {a, b, c}; Obviamente, o array está mantendo referências e não objects; ou seja, há uma matriz contígua na memory […]

Evitando que o Cassandra deposite arquivos hprof

Eu gostaria de impedir que Cassandra descarte arquivos hprof, já que não preciso usá-los. Eu também tenho muito espaço em disco (50GB de 100 GB é usado para dados), e esses arquivos engolem todo o espaço em disco antes que eu possa dizer “stop”. Como devo fazer isso? Existe um script de shell que eu […]

É melhor armazenar o valor como variável ou chamar o método novamente?

Recentemente, comecei a aprender um pouco de Java. Pelo que eu já aprendi sobre a JVM, parece que o JIT faz com que seja muito rápido em operações que exigem ciclos de CPU (ou seja, chamando um método), mas também faz com que ele tenha fome de memory. Então, quando eu preciso da mesma saída […]

“Erro: JAVA_HOME não está definido corretamente.” Na construção de Jikes rvm

Quando eu construí o JVM RVM no Ubuntu, recebi este erro. Qualquer ideia? bin/buildit localhost production —> Config: production /bin/bash –login -c ‘/bin/bash –login -c ” cd /home/jack/Programs/jikesrvm-3.1.2 && export JAVA_HOME=/opt/jdk1.6.0 && ant very-clean -Dhost.name=ia32-linux && ant check-components-properties -Dhost.name=ia32-linux -Dtarget.name=ia32-linux -Dcomponents.cache.dir=/home/jack/.buildit_components_cache && ant -Dtarget.name=ia32-linux -Dconfig.name=production -Dhg.revision= -Dhost.name=ia32-linux -Dcomponents.cache.dir=/home/jack/.buildit_components_cache “‘ Error: JAVA_HOME is not defined correctly. […]

forçar jvm a retornar a memory nativa

Eu estou correndo de vez em quando em tarefas de eclipse que exigem muito grande quantidade de memory. Então, enquanto jvm tarefa está sendo executado engole cerca de 2-3gb de RAM, isso é ok. Mas uma vez que o jvm pegou essa memory, ela não é liberada e eu tenho uma situação quando a memory […]

número limitado de encadeamentos usados ​​pela JVM

Como definir o limite para o número de Thread que alguém pode criar? O que eu faço é executar o código de alguém (algo como ideone) e querer limitar o número de threads que ele pode gerar. Como fazer isso? Alguma configuração jvm ou outra coisa? EDIT Eu adiciono mais informações especificadas porque algumas pessoas […]

Jmeter java.lang.OutOfMemoryError: limite de sobrecarga do GC excedido

Estou usando o Jmeter para injetar carga de trabalho em um aplicativo implantado em uma instância do AWS EC2. O teste tem que ser muito grande: ele dura 10 horas e o perfil de carga de trabalho tem formas bimodais com um pitch de cerca de 2600 solicitações em 5 minutos. Na verdade, tenho uma […]

Por que o tamanho alocado da geração permanente aumenta após a execução do GC?

A seguir, os instantâneos que tirei depois de executar o GC do jvisualvm. e A primeira imagem é a estatística Heap e a segunda é a estatística permanente. Eu não sou capaz de entender quando eu usei GC tamanho do heap diminuiu (como esperado), mas o tamanho alocado de geração permanente aumentou (embora o tamanho […]