Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I currently know the following open source GIS servers:

  • Geoserver: java based, vector and bitmap support, also supports. Is now on par with mapserver (performance-wise).
  • mapserver: c/c++, used to be the fastest server. Better for raster than vector?
  • mapguide: do not know this
  • mapnik: the new kid on the block? do not know much about it, but it looks appealing
  • mapfish: as far as i know, only retrieves vector-data for display in openlayers. There does exist a rails implementation.

If possible i would like some kind of comparison, which did you choose or prefer and why?

I am looking at building a rails website, and need some kind of GIS server. I will need raster and vector data (clickable). Is this doable with one server? Backend database will be Postgis.

share|improve this question
    
A little off-topic, but this was a good read and sheds some light on mapnik: alistapart.com/articles/takecontrolofyourmaps –  nw1 Feb 28 '11 at 17:12
    
why no one has talked about mapguide ? what about it ? any experiences using it ? –  geogeek Apr 21 '13 at 12:32
add comment

5 Answers 5

From the point of view of performance, you may find interesting the following benchmark results:

http://www.slideshare.net/gatewaygeomatics.com/wms-performance-shootout-2010

Data about the benchmarks themselves can be found at http://wiki.osgeo.org/wiki/Benchmarking_2010.

share|improve this answer
    
Very cool. From what i can see Mapserver is still the performance beast, seems to beat every other contender hands down. i was assuming Geoserver would take second place overall, but mapnik performs surprisingly well; even on Postgis it seems to outperform mapserver (without reprojection). So, how do they compare feature-wise? –  nathanvda Feb 28 '11 at 14:27
add comment

There is also QGIS Server (WMS). Read "QGIS Server – A WMS Server for the masses" for more information.

I've compiled a small feature comparison between Geoserver and UMN Mapserver.

MapFish is a good framework, but you still need some map server in the background. If you are working with Rails, MapFish seems like a good way to go:

The MapFish framework is built around an open HTTP-based protocol, allowing various interoperable implementations. In addition to the reference implementation provided by the Python/Pylons-based framework, two other implementations are currently available: a Ruby/Rails plugin (GPLv3) and a PHP/Symfony plugin (BSD)

share|improve this answer
2  
QGIS Mapserver seems interesting, especially because it comes paired with QGIS client, where you can prepare your mapfile. The comparison between Geoserver and Mapserver is also helpful. Indeed: the total web-admin interface is a huge plus for me. –  nathanvda Feb 28 '11 at 16:49
    
Geoserver is really fast to set up and the web interface has improved a lot compared to previous versions. But I really miss the flexibility of UMN Mapserver's mapscript feature. –  underdark Feb 28 '11 at 18:30
add comment

Laurent Jegou keeps up-to-date a great document listing all known webmapping solution and their scope and features (with both client and server technology). Unfortunately it is in french, but since it's all about technical stuff you will be able to understand it easily.

Definitely, it would not be enough to choose the right one, but at least you will be able to exclude some of them at a glance.

The latest version is available at the following url: http://www.geotests.net/cours/sigma/webmapping/tableau_webmapping2010.pdf

share|improve this answer
1  
That is indeed an incredibly interesting chart. Awesome work of Laurent Jegou! Thank you for the link! And to me reveals new contenders: geomajas and deegree. –  nathanvda Feb 28 '11 at 16:40
3  
And tileMill could be added since the last update ( tilemill.com ) ;-) –  simo Feb 28 '11 at 17:31
1  
TileMill is looking nice indeed. Mapnik with added management console (or so i read it). Thank you for the tip! –  nathanvda Feb 28 '11 at 18:47
add comment

Well, this could be an huge discussion, I will try to give you some quick points in a few words. You may compare the software in your list from tree points of view:

1) Performances

Here the already suggested benchmark will be your best friend, at least for WMS

2) Services offered

Generally you may consider which services are offered from the software: this services may be compliant to OGC web standards (WMS, WFS, WCS, WPS, SOS, OCS...) or not.

GeoServer natively offers WMS, WCS and WFS (for the last two it is the reference implementation). It can also give support for WPS with an extension.

MapServer offers WMS, WFS, WCS and SOS, but with respect to GeoServer it lacks the transactional features for WFS (WFS-T). With respect to GeoServer in many case it has less architecture overhead (as it works with Apache httpd) and has a huge list of supported data format via GDAL/OGR. It lacks a nice admin web interface (like in GeoServer), but mapfiles can be easy modified and customized via shell or mapscript API.

Mapnik is a powerfull library that can be used as a WMS (and according to the last benchmarks at FOSS4G 2010 its performance are impressive).

There are other well knows softwares that provide implementations for WPS (pyWPS, ZooProject, 52n WPS), for OCS (GeoNetwork) and still other ones.

If you consider MapFish then you would possibly need to add the list GeoDjango and FeatureServer that offers not standard implementation of GIS web services. GeoNode is a cool attempt to web2.0fy a SDI (ie with tag and social stuff).

Also give a look to the new kid on the block: TileMill, that is mainly based on Mapnik, and it is build on the node.js framework

3) Architecture

GeoServer and GeoNetwork are Java based (so they require a servlet engine like Tomcat).

MapServer and Mapnik are C based, and they run well on Apache httpd.

All the other softwares are mainly based on Python using different frameworks: MapFish use Pylons, GeoDjango and GeoNode uses Django, FeatureServer and pyWPS are in pure Python. They can all run in httpd via modPython or WSGI or as CGI.

Note that almost all of this software is based on the ubiquos GDAL library (often even found in proprietary software).

share|improve this answer
add comment

It may be useful to mention geomajas as well. http://apps.geomajas.org/showcase/ Especially useful for building a GIS 'application' rather than just a presentation of maps. I like the advanced query and editing options.

share|improve this answer
    
What i heard of geomajas is that it is java-based, and has a client development framework. So that would force me to develop in java for it. I want something that i can use in my own website (rails) using openlayers or something similar. So thank you for the tip, but for me personally not suitable. This document: geotests.net/cours/sigma/webmapping/tableau_webmapping2010.pdf seems to corroborate that. –  nathanvda Feb 28 '11 at 18:49
    
Not quite. Geomajas also offers a javascript interface for doing client development. For advanced customizations to the map you need to use Java, but you can do just about everythin through Javascript. –  Joachim Van der Auwera Jul 25 '12 at 18:32
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.