利用GeoServer搭建高效的WebGIS开发平台

转载 2007年09月21日 15:00:00

利用GeoServer搭建高效的WebGIS开发平台


历经3,4个月终于利用Geoserver搭建起了一个高效的WebGIS平台。能谈得上高效当然不能只用Geoserver,在对Geoserver研究了一段时间后,知道Geoserver的效率瓶颈在地图的生成浏览上。而地图的浏览这是webgis的基本功能,几乎所有的GeoServer中文资料在提到GeoServer的时候都指出不仅仅需jdk的支持,更要安装JAI和JAII/O,包括我自己翻译自refractions "Walking Through"系列文档的《Windows平台下GeoServer安装与使用》也犯了这个错误。

事实上从GS1.4.1版本开始,GeoServer不仅不需要JAI,而且额外的JAI会使GS报错,造成1.4.1版WMS服务不可用、1.5.0版更是无法启动。细心的朋友可以注意到,在GS的WEB-INF/lib目录下的库中,已经包含了jai1.3.jar等文件。

至此,今天GS的问题已经成功解决了,我也可以继续完成“中国地图”这样一个简单的WebGIS了。虽然为此活活浪费了一个下午,但是总结起来也是有几点收获:
1. 不要轻信Google给出的答案。第一资料的实效性有限,第二可靠性也不足:我的那篇翻译文章已经排到Google关键字为geoserver的结果页面中非常靠前的位置,不知又要害苦多少初学者。而我今天仔细看了GS官方的UserGuide之后也发现官方的wiki也没有要求安装jJAI。因此,这篇文章的标题也尽可能写得详细些,希望再次借助Google挽回这种损失。

2.出现错误要仔细看log。log的重要性不用再说了,虽然有时候它提供的信息并不明确,但是大多数情况下,log总能给出最佳答案。今天就是因为着急,把问题怪罪的WMS的url上,才忽视了JAI的问题。(不过有一点我又不清楚了,我的所有地图在MapBuilder中倒是都能查看,也难怪我会去怪罪WMS的url)。

明天继续工作,希望这个经验能对大伙有所帮助,我马上也要修改那个出错的文章,删去安装JAI的部分。
Geoserver的工程部署说明
No Tags
isalie WEBGIS 没有评论 安装环境:Windows 2003 Server SP1+Sun Java 2 SDK 1_4_2_11+Tomcat 5.0.28
如果你希望试用Geoserver,建议下载Windows Installer文件geoserver-1.3.3.exe,安装程序中包含
Jetty应用服务器,将为你自动创建测试环境。
部署一个Geoserver项目(WAR文件包),大致需要以下六个步骤:
1、安装Sun Java 2 SDK,到sun网站下载j2sdk-1_4_2_11-windows-i586-p.exe(版本可能有变化)。
注意:必须下载JDK,而不是JRE。你也可以使用IBM或BEA公司的JDK,经过测试表明BEA的Jrocket在Windows x86平台上比Sun的JVM有更快的速度。
(安装JDK 5.0可能遇到问题,请参考Geoserver帮助文档。)
2、安装Sun Java Advance Image SDK,到sun网站下载jai-1_1_2_01-lib-windows-i586-jdk.exe(版本可能有变化),安装程序自动将Java Advance Image安装到Sun Java 2 SDK所在目录。
注意:必须安装JDK版本。
3、安装Sun Java Advance ImageIO SDK,到sun网站下载jai_imageio-1_0_01-lib-windows-i586-jdk.exe(版本可能有变化),安装程序自动将Java Advance ImageIO安装到Sun Java 2 SDK所在目录。
注意:必须安装JDK版本。
4、安装Tomcat应用服务器,到Apache网站下载jakarta-tomcat-5.0.28.exe,安装到指定目录,默认使用8080端口。你也可以安装其他J2EE应用服务器,经过Geoserver项目组测试的应用服务器包括:JBoss、Jetty、Tomcat、Resin。
注意:Tomcat 5.5需要JDK 5.0支持。
5、安装Apache服务器,到Apache网站下载apache_2.2.3-win32-x86-no_ssl.msi,安装到指定目录,服务器名为本机IP地址,默认使用80端口。如果Apache Server无法正常启动,检查你的系统上是否正在运行IIS服务器。
(该步骤可选,我们使用Apache处理普通http请求,Tomcat处理OGC WMS,WFS-T地图服务请求,这样做的目的是分担Tomcat的工作压力,提高Geoserver的地图处理速度。)
6、关闭Tomcat,复制geoserver.war包到Tomcat的webapp目录,启动Tomcat。Tomcat将自动部署geoserver。启动完毕,使用http://ip:8080/geoserver进入geoserver图形配置页面。第一次进入geoserver,应用服务器需要编译jsp,请耐心等待。
提示:geoserver需要高速CPU和大量内存才能流畅运行,建议配置至少为P4 1.6A 512M内存。在低配置的机器上运行速度将非常缓慢,参见以下的测试报告。

测试中我们同时渲染了15个地图图层,数据全部取自Oracle数据库,记录每次地图刷新所需时间。
服务器A P4 1.7(2级Cache 256K) 内存 512M(DDR266) 耗时6-8秒
服务器B P4 1.6A(2级Cache 512K) 内存 1G(DDR400) 耗时3-5秒
服务器C P4 2.8E(2级Cache 1M) 内存 512M(DDR400) 耗时1-2秒


按照开发指南,用geoserver1.3.0配置好了一个arcsde9.0的 DS,创建了一个featuretype
地理信息系统服务器 GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现,利用 GeoServer 可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用户之间迅速共享空间地理信息。

GeoServer 主要特性包括:兼容 WMS 和 WFS 特性;支持 PostGIS 、 Shapefile 、 ArcSDE 、 Oracle 、 VPF 、 MySQL 、 MapInfo ;支持上百种投影;能够将网络地图输出为 jpeg 、 gif 、 png 、 SVG 、 KML 等格式;能够运行在任何基于 J2EE/Servlet 容器之上;嵌入 MapBuilder 支持 AJAX 的地图客户端;除此之外还包括许多其他的特性。

GeoServer 最新的版本 1.3.1 beta 增加了 GeoTools 2.2.x , GeoTools 是一款基于 Java 的开源 GIS 工具集,允许用户对地理数据进行基本操作。通过 GeoTools 的各种接口和 helper 类,可以写入新的数据格式,通过 GeoTools 为 GeoServer 提供的插件,在不进行重新编译的情况下,可以让 GeoServer 支持更多的数据格式,甚至只需要通过 GUI 的 option 设置即可。

一直都比较关注 GeoServer 和 GeoTools 的发展情况, GeoServer 提供了一个相对简易的地理信息服务系统, GeoTools 包含地理信息数据基本操作的源码实现,是学习地理信息基础研发和 WebGIS 的经典资料库,两者的合并和今后的发展无疑会吸引众多地理信息开发者的目光。 

相关文章推荐

开源GIS_安装GeoServer

简介安装好了JDK和Tomcat之后我们可以开始安装GeoServer了,相关环境: 系统:Win7 64位旗舰版 GeoServer2.9.0 JDK 1.8.0 Tomcat7.0 可以去GeoS...

Linux下部署Geoserver

Linux下部署Geoserver 环境        操作系统 Centos7   软件 jdk-8u101-linux-x6...
  • qiang89
  • qiang89
  • 2016年10月13日 10:54
  • 1012

GeoServer生产环境调优(部分)

主要内容来自:地理学博士王晨亮整理 JVM调优 由于Geoserver是JavaEE项目,其性能直接受JVM参数影响,因此首先就需要对其进行JVM级别的优化。Geoserver部署在哪里,就设置...
  • Baple
  • Baple
  • 2017年01月24日 08:47
  • 1481

基于Geoserver发布地图

Geoserver是著名的开源GIS软件之一。也是项目中常用的地图服务软件。基于geoserver和Openlayers就可以构建一个免费的开源GIS项目。 Geoserver发布地图的步骤为: ...

GeoServer学习手记(一):GeoServer概述

GeoServer学习手记(一):GeoServer概述粟卫民http://www.gisdev.cn/ http://blog.csdn.net/suen/ 日期:2009-10-19保留所有版权。...
  • suen
  • suen
  • 2009年10月25日 17:30
  • 29004

Geoserver Web界面开发

2012 暑假 山西农业大学  左脑 找了很长时间,都没有合适的资料,还是看官方的开发文档吧。今天针对WEB 用户界面这部分做了一下全文翻译: Geoserver   Web用户界面开发 ...

eclipse中建geoserver源码

eclipse中建geoserver源码:讲述的是在eclipse中如何构建geoserver源码工程,其中涉及到了jdk,github,marven等。...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

GeoServer的SQL Views详解

GeoServer的SQL Views详解众所周知,Geoserver支持发布shp,postgis数据库数据。通过各种扩展,可以发布oracle spatial,myspatial数据库数据。在日常...

Geoserver安装配置

Geoserver安装配置 简介 简单来讲,GeoServer就是一个地图服务器,是 OpenGIS Web 服务器规范的 J2EE 实现。兼容 WMS 和 WFS 特性;能够运行在任何基...
  • shareTM
  • shareTM
  • 2017年02月08日 19:01
  • 1454
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用GeoServer搭建高效的WebGIS开发平台
举报原因:
原因补充:

(最多只允许输入30个字)