Obrigado por visitar a devmedia.com.br!

Precisamos de você para divulgar nossos vídeos e cursos gratuitos para a comunidade.

Se você gosta da devmedia.com.br por favor dê-nos o seu clique para o Google+ e ajude outros desenvolvedores ao redor do mundo.



Obrigado por seu apoio!
Equipe DevMedia

sair sem compartilhar (x)
DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:

  #Este é um post fechado

Este post está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais sobre como abrir este post!



Artigo Java Magazine 27 - Tira-Dúvidas

Artigo publicado pela Java Magazine edição 27.

BRK##: 13 - 15

Esse artigo faz parte da revista Java Magazine edição 27. Clique aqui para ler todos os artigos desta edição

Atenção: por essa edição ser muito antiga não há arquivo PDF para download.Os artigos dessa edição estão disponíveis somente através do formato HTML. 

Tira-Dúvidas

Caches e DAOs, driblando restrições de máquina, VMs alternativas e relatórios.

 

JVM mais enxuta?

Existe alguma JVM que ocupe menos memória RAM que a da Sun (o mínimo possível) e que ainda seja compatível com o máximo da especificação? Não é necessário que a JVM inclua a parte de interfaces gráficos (Swing e AWT): o objetivo é usá-lo para executar processos junto com o sistema operacional.

 Carlos Alberto Nakazawa

 

O uso de mais memória RAM pelo Java é inevitável, porque características como código portável, garbage colection, segurança e frameworks ricos têm seu custo. Tanto é que você não encontrará alternativas com arquitetura e características semelhantes (ex.:Smalltalk ou .Net) que sejam significativamente melhores em uso de memória. É o preço a se pagar por uma plataforma de desenvolvimento de mais alto nível.

Disto isto, não adianta muito procurar implementações alternativas, pois uso de RAM do JRE da Sun não é uma “deficiência” que talvez outras implementações não tenham. Outras implementações poderão usar menos RAM se fizerem sacrifícios em outra parte – por exemplo, usando compiladores JIT menos sofisticados (que vão produzir código menos eficiente) ou técnicas mais simples de garbage collection (que, por exemplo, geram pausas maiores). Mesmo assim, a diferença não será grande. Você acabará fazendo grandes sacrifícios de desempenho em troca de 15%, 20% de economia de RAM. Geralmente não vale a pena.

Se a aplicação tiver muito pouca necessidade de desempenho, pode valer a pena desativar o compilador JIT (na JVM da Sun, use o switch –Xint). Isso pode ser uma boa idéia também para processos de duração muito curta, como pequenas ferramentas de linha de comando, cujo tempo de execução não dá ao JIT tempo para otimizar bem o código.

 

Agregando processos

Se você quer implementar algo semelhante a daemons em Java – processos que tratam continuamente determinados eventos, mensagens de rede etc., ou fornecem algum serviço – uma solução interessante seria definir uma arquitetura de maneira que se tenha executando apenas um desses processos executando. Nesse caso, vale mais a pena ter um processo consumindo 20 Mb para implementar cinco serviços , por exemplo, que ter cinco processos separados usando 12 Mb cada um. Essa “agregação” de processos pode custar algum esforço adicional, por exemplo, para possibilitar reinicialização/reconfiguração de serviços iniduais. Mas economiza memória, talvez o bastante para resolver o seu problema. E se houver um número suficiente de processos, o consumo de memória inicial da JVM logo se dilui, e o uso de RAM fica bem próximo ao de processos nativos. Até mesmo serviços nativos costumam usar truque para economizar memória.o daemon



ATENÇÃO! A exibição deste artigo foi interrompida.


  #Este é um post fechado

Este post está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais sobre como abrir este post!







    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



Autor
Equipe Devmedia

Noticias/Dicas/Artigos pulicados.




Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]
Este post está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia.

  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 4,90 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ 1,96 (assinante) ou R$ 2,45 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ 1,47
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03