【问题标题】:GraphicsMagick performance issue using c++ java native code使用 c++ java 本机代码的 GraphicsMagick 性能问题
【发布时间】:2012-07-19 18:03:46
【问题描述】:

我正在使用 GraphicsMagick C++ api 并在部署在 tomcat 上的 java web 项目中调用它,以便在运行时将图像的大小从某个大小动态调整为给定的宽度/高度。我正在使用 C++ api 的 scale() 方法。

现在当tomcat负载不多时性能正常,但是当服务器连接数/负载增加时,Image resizing的性能会大大下降。甚至每次调整大小时都会花费 30 到 40 秒。尽管系统的内存、cpu 和 io 利用率看起来很正常,一点也不差。

谁能帮我解决这个问题?不胜感激

【问题讨论】:

    标签: java c++ tomcat java-native-interface graphicsmagick


    【解决方案1】:

    你在Graphics Magick documentation看到过这个吗?

    gm convert -size 120x120 cockatoo.jpg -resize 120x120 +profile "*" thumbnail.jpg

    在此示例中,“-size 120x120”向 JPEG 解码器提示图像将被缩小到 120x120,从而避免将全分辨率图像返回给 GraphicsMagick 以进行后续调整大小操作,从而使其运行得更快。 '-resize 120x120' 指定输出图像的所需尺寸。它将被缩放,使其最大尺寸为 120 像素。 '+profile "*"' 会删除任何 ICM、EXIF、IPTC 或其他可能存在于输入中且在缩略图中不需要的配置文件。

    如果您当前没有使用尺寸选项,您可能会注意到一个很大的不同。

    【讨论】:

      【解决方案2】:

      当我们遇到类似问题时,我遇到了这个问题。但是现在我们有一个很好的解决方案。试试 gm4java + im4java: http://kennethxu.blogspot.com/2013/04/integrate-java-and-graphicsmagick.html

      【讨论】:

        猜你喜欢
        • 2010-12-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-10-16
        • 1970-01-01
        • 2011-09-07
        • 1970-01-01
        • 2020-11-10
        相关资源
        最近更新 更多