As imagens no banco estão no formato gif e têm 3000x2000 pixels de tamanho, elas dão em média um total de 210k cada. Estou utilizando o Tomcat 4.1.12 com o JDK1.4, por enquanto estou testando na minha máquina (AMD 500 - 512MB, é realmente o pessoal aqui precisa me dar uma máquina melhor
).
O problema é o tamanho das imagens, eu fiz uns testes com imagens menores 1000x1000px e várias requisições simultâneas não apresentaram problemas. 
Alguém teve alguma experiência nisso e recomenda alguma outra solução ? Qualquer idéia, opinião é bem vinda.
Bom o que eu estou fazendo é chamando um servlet que faz uma consulta no banco SQL Server (que está no meu servidor) trazendo a imagem GIF para que ela possa ser mostrada no browser. Sim o processo é lento, devido ao tamanho na minha máquina leva pelo menos 20s para mostrar a imagem. Segue o código:
InputStream in = resultSet.getBinaryStream(“ORGANOGRAMA_IMAGEM”);
final byte[] buffer = Functions.toByteArray(in);
in.close();
ImageIcon imageIcon = new ImageIcon(buffer);
ServletOutputStream out = response.getOutputStream();
GifEncoder enc = new GifEncoder(imageIcon.getImage(), out);
synchronized (this)
{
enc.encode();
}
É só isso o que eu quero fazer, só que o erro ocorre justamente no ponto enc.encode(); quando há acesso simultâneo. Acabei postando o erro errado, não é OutOfMemory, só mostra OutOfMemory depois de mostrar este erro:
Uncaught error fetching image:
java.lang.NullPointerException
at Acme.JPM.Encoders.GifEncoder.encodeDone(GifEncoder.java:122)
at Acme.JPM.Encoders.ImageEncoder.imageComplete(ImageEncoder.java:261)
at sun.awt.image.InputStreamImageSource.errorConsumer(InputStreamImageSource.java:131)
at sun.awt.image.InputStreamImageSource.errorAllConsumers(InputStreamImageSource.java:124)
at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:269)
at sun.awt.image.ImageFetcher.fetchloop(ImageFetcher.java:168)
at sun.awt.image.ImageFetcher.run(ImageFetcher.java:136)
Gostei da idéia do pool de recursos, você teria algum exemplo sobre isso ou recomenda algum componente para isso ?
Obrigado pela atenção.