Java ImageIO.write()最多需要6秒钟

我正在编写一个Web应用程序,我需要将图像从servlet发送到客户端。图像是动态生成的,并且很大(+ -2MB)。可能是jpeg,png或gif。

现在,我正在使用ImageIO.write()将图像写入输出流,但是其速度很慢。客户最多需要6秒钟才能看到图像。我需要加快速度。

有什么建议?

顺便说一句 我知道正在寻找ImageIO主题的更快替代方案。但这并没有帮助我。由于使用PNG的速度很慢,因此ImageMagick不是解决方案,我已经测试了JAI,甚至更糟。

提前致谢

编辑:

为您展示一些代码:

BufferedImage bi = [code to generate Image];

response.setContentType(mime);

ServletOutputStream out = response.getOutputStream();

ImageIO.write(bi,"png",out);

我删除了异常处理以提高可读性。

回答:

通常,Java中的图像编码速度很慢,但是您可能还需要确保已安装本机库,因为它们在性能上有很大的不同。

http://download.java.net/media/jai-imageio/builds/release/1.1/INSTALL-

jai_imageio.html

以上是 Java ImageIO.write()最多需要6秒钟 的全部内容, 来源链接: utcz.com/qa/431617.html

回到顶部