注:geoserver版本Linuxgeoserver2.15.0安装:bin方式安装(内嵌jetty,非war安装)

一。geoserver调优之Java图像处理优化

1.原生JAI和ImageIO

GeoServer的图像处理功能使用了Java的JAI和JAIImageIO功能,但由于Java的JAI和JAIImageIO库默认是Java实现,若将其换为原生库可显著提高图像处理速度。注意,在windows下只有32位Java环境才可用,64位Java环境不可用原生库。下载和拷贝原生库文件的操作参考以下代码:

cd/tmp
wgethttp://download.java.net/media/jai/builds/release/1_1_3/jai-1_1_3-lib-linux-amd64.tar.gz
wgethttp://download.java.net/media/jai-imageio/builds/release/1.1/jai_imageio-1_1-lib-linux-amd64.tar.gz

#解压

gunzip-cjai-1_1_3-lib-linux-amd64.tar.gz|tarxf-
gunzip-cjai_imageio-1_1-lib-linux-amd64.tar.gz|tarxf-

#把解压之后的相关文件拷贝到jre目录下(jdk安装目录)

#/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64指jdk安装目录,查看jdk安装目录

参考:https://www.51969.com/post/18002178.html

cp/tmp/jai-1_1_3/lib/*.jar/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/ext/
cp/tmp/jai-1_1_3/lib/*.so/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/amd64/
cp/tmp/jai_imageio-1_1/lib/*.jar/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/ext/
cp/tmp/jai_imageio-1_1/lib/*.so/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/amd64/

2.重启geoserver报错geoserver启动Couldnotinitializeclassjavax.media.jai.JAI

原因:jdk底下新加的jar包和geoserver的web-lib目录下JAI的jar包冲突了https://blog.csdn.net/zhang88lei/article/details/6050424

3.解决:删除$CATALINA_BASE/webapps/geoserver/WEB-INF/lib目录下的jai_codec-1.1.3.jar;jai_core-1.1.3.jar;jai_imageio-1.1.jar三个文件

注:先备份后删除

mkdir-p/tmp/geoserver/
cp/usr/local/geoserver-2.15.0/webapps/geoserver/WEB-INF/lib/jai*.jar/tmp/geoserver/
cd/usr/local/geoserver-2.15.0/webapps/geoserver/WEB-INF/lib
ls
lsjai*
rm-f-rjai_codec-1.1.3.jar
lsjai*
rm-f-rjai_core-1.1.3.jar
ls
lsjai*
rm-f-rjai_imageio-1.1.jar
lsjai*

4.重启geoserver

二。原生库变回java库

1.删除jre下的原生jar包(核对是否是自己之前复制过去的那些jar包)

rm-f-r/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/ext/jai_codec.jar
rm-f-r/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/ext/jai_core.jar
rm-f-r/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/ext/jai_imageio.jar
rm-f-r/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/ext/mlibwrapper_jai.jar
rm-f-r/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/ext/clibwrapper_jiio.jar

2.删除jre下的原生so文件(核对是否是自己之前复制过去的那些文件)

rm-f-r/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/amd64/libmlib_jai.so
rm-f-r/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/jre/lib/amd64/libclib_jiio.so

3.把之前删除的/webapps/geoserver/WEB-INF/lib目录下的jai_codec-1.1.3.jar;jai_core-1.1.3.jar;jai_imageio-1.1.jar三个文件还原

cp-r/tmp/geoserver/*.jar/usr/local/geoserver-2.15.0/webapps/geoserver/WEB-INF/lib/


 您阅读本篇文章共花了: