Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 18821|Resposta: 5

[Fonte] A diferença entre servidor e cliente da JVM de máquina virtual Java

[Copiar link]
Publicado em 24/07/2017 11:10:31 | | |
resumo sobre as duas VMs do Java : Server & Client


--------------------------------------------------------------------de mim mesmo-----------------------------------------------------------------------
Atualmente, apenas 64 bits suporta o modo servidor
VMs de servidor iniciam cerca de 10% mais devagar que as VMs de clientes.Roda pelo menos 10 vezes mais rápido que a VM do cliente
Como a CPU, a memória e o disco rígido do servidor são mais potentes que a máquina cliente, após o programa ser implantado, ele deve ser iniciado no modo servidor para obter melhor desempenho.
A JVM padrão é 1M no modo cliente e 64M para -Xmx. A JVM é padrão para 128M no modo Servidor e 1024M para -Xmx.
server:启动慢,编译更完全,编译器是自适应编译器,效率高,针对服务端应用优化,在服务器环境中最大化程序执行速度而设计。
client:快速启动,内存占用少,编译快,针对桌面应用程序优化,为在客户端环境中减少启动时间而优化;
Sobre GC:
No modo clien, a nova geração escolhe o GC serial, e a geração antiga escolhe o GC serial
No modo servidor, a nova geração escolhe a GC de reciclagem paralela, e a geração antiga escolhe GC paralela
De modo geral, existem duas maneiras de escolher nossa aplicação do sistema: prioridade de throughput e prioridade de tempo de pausa, o modo padrão paralelo GC do servidor é usado para a prioridade de throughput, e o modo GC concorrente (CMS) é selecionado para a prioridade de tempo de pausa.


--------------------------------------------------------------------do navegador-------------------------------------------------------------------------
O JDK possui dois tipos de VMs: clientes de VM e aplicações de servidor de VM. As duas soluções compartilham a base de código hotspot do runtime Java, mas usam compiladores diferentes para características únicas de desempenho tanto para o cliente quanto para o servidor, e essas diferenças incluem a criação de políticas inline e padrões de heap.

Embora servidores e VMs de clientes sejam semelhantes, as VMs de servidor foram especificamente ajustadas para atingir velocidades de operação máximas de pico. Ele é projetado para executar aplicações servidor de longa duração que exigem a maior velocidade de execução além de um tempo de inicialização rápido ou de um pequeno espaço de memória em tempo de execução.

O Compilador de VM do Cliente é um compilador usado por máquinas virtuais clássicas e atualizações em tempo real (JIT) através de versões anteriores do JDK. Máquinas virtuais cliente oferecem desempenho aprimorado para execução de aplicações e applets. Os clientes hotspot das Máquinas Virtuais Java foram especialmente ajustados para reduzir o tempo de inicialização e a pegada de memória dos aplicativos, tornando-os particularmente adequados para ambientes de clientes. Em geral, o sistema cliente possui uma interface gráfica melhor.

Então, a verdadeira diferença também está no nível do compilador:

O compilador da máquina virtual cliente não tenta realizar otimizações mais complexas realizadas pelo compilador na máquina virtual do servidor, mas durante a troca leva menos tempo para analisar e compilar um pedaço de código. Isso significa que as máquinas virtuais cliente podem iniciar mais rápido e exigir uma área de memória menor.

A máquina virtual de servidor contém um compilador adaptativo avançado que suporta muitas otimizações de compiladores C++ para otimização, do mesmo tipo, assim como algumas otimizações que não podem ser feitas com compiladores tradicionais, como o agressivo inline em chamadas de métodos virtuais. É uma vantagem competitiva e de desempenho, um compilador estático. Técnicas de otimização adaptativa são muito flexíveis em sua abordagem e frequentemente superam até mesmo técnicas avançadas de análise estática e compilação.

Quando o modo -Server inicia, a velocidade é lenta, mas uma vez em execução, o desempenho será muito melhorado, porque: quando a máquina virtual está no modo -Client, ela usa um compilador leve com codinome C1, e a máquina virtual iniciada no modo -Server usa um compilador com codinome C2, que é relativamente bem compilado do que o compilador C1, e o desempenho é maior após o serviço.

Geralmente, desde que você mude a ordem das duas configurações de -server KNOWN e -client KNOWN,A premissa é que tanto as pastas servidor quanto o cliente existem no diretório /jre/bin do JAVA_HOMEcorrespondente às suas respectivas JVMs




Anterior:Não foi possível reservar espaço suficiente para o heap de objetos de 2097152KB
Próximo:VS2012 Solução para o erro ao instalar o AutoMapper no Nuget
 Senhorio| Publicado em 14/08/2017 16:52:24 |
O erro JAVA ocorreu durante a inicialização do erro da VM
http://www.itsvse.com/thread-3972-1-1.html
(Fonte: Architect)
Publicado em 21/10/2017 15:34:08 |
Só usava VMware
Publicado em 17/12/2017 08:58:20 |
Quero 10 pontos
Publicado em 21/12/2017 10:09:50 |
A diferença entre servidor e cliente da JVM de máquina virtual Java
Publicado em 08/03/2018 20:37:43 |
Eu quero 10M
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com