Se um servidor de aplicação JAVA está com a HEAP configurada...

Próximas questões
Com base no mesmo assunto
Q71421 Programação
Se um servidor de aplicação JAVA está com a HEAP configurada com valor abaixo do necessário, é possível que, por esse motivo, ocorram
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: B - erros de java.lang.OutOfMemoryError nas aplicações.

A questão abordada está relacionada à configuração da memória HEAP em um servidor de aplicação Java. A HEAP é uma área da memória usada pela Máquina Virtual Java (JVM) para alocar objetos que são criados durante a execução de um programa em Java. A configuração adequada da HEAP é crucial para o desempenho e a estabilidade das aplicações Java.

Quando a HEAP está configurada com um valor abaixo do necessário para as demandas da aplicação, pode ocorrer uma condição onde a JVM não consegue mais alocar espaço para novos objetos pois não há memória suficiente disponível. Esse cenário gera o erro conhecido como java.lang.OutOfMemoryError, que indica que a aplicação excedeu a quantidade de memória HEAP disponibilizada para ela.

As demais alternativas não estão diretamente relacionadas à configuração da memória HEAP. Problemas de data e hora (Alternativa A) geralmente estão relacionados à configuração de timezones ou bugs em bibliotecas de data e hora. Erros de charset (Alternativa C) são relacionados a problemas de codificação e decodificação de caracteres, especialmente ao comunicar entre sistemas que usam diferentes conjuntos de caracteres. Ataques de buffer overflow (Alternativa D) são vulnerabilidades de segurança que ocorrem quando um programa escreve dados além dos limites de um buffer alocado na memória, mas não estão relacionados ao tamanho da HEAP. Por fim, ataques de força bruta (Alternativa E) são tentativas de adivinhar senhas por meio de tentativa e erro, e também não têm relação com a configuração de memória HEAP.

Portanto, a alternativa correta é a letra B, pois é a única que descreve um erro que está diretamente associado a uma configuração insuficiente de memória HEAP no servidor de aplicação Java.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

O ajuste apropriado do tamanho do heap inicial reduz a sobrecarga da coleta de lixo, aprimorando o tempo de resposta do servidor e o rendimento do processamento. Se o valor for muito baixo, o servidor pode sofrer de sobrecarga de um número alto de coletas de lixos secundárias. Se o valor for muito alto, a memória será subutilizada.Alternatica B

A coleta de lixo numa JVM é o processo que automaticamente limpa objetos que não são mais referenciados pelo programa: o espaço em heap utilizado por aquela instância precisa ser reciclado para o uso de novos objetos, contribuindo para também para a sua integridade e não fragmentação do heap.
A coleta de lixo é feita em thread própria, mas pode ser invocada explicitamente pelos métodos System.gc() e Runtime.gc().

Uma definição acadêmica da estrutura de dados Heap ("monte" é a tradução mais próxima) pode ser encontrada em http://books.google.com.br/books?id=7ogOGQ9VMBAC&lpg=PA313&dq=heap%20java&pg=PA303#v=onepage&q=heap%20java&f=false, sendo que o uso dessa estrutura particular é interessante por seu desempenho.

Sobre o coletor de lixo nas JVM, gostei deste artigo: http://www.javaworld.com/javaworld/jw-08-1996/jw-08-gc.html
Heap para Java é o local no sistema operacional onde ficam alocados os objetos que foram instanciados, ou seja, todos os objetos instanciados irão ser enviados para a heap. A unica alternativa que faz sentido é a letra B que apresenta um problema de OutOfMemory (falta de memória)

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo