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.

  • 1
    A little off-topic, but this was a good read and sheds some light on mapnik: alistapart.com/articles/takecontrolofyourmaps
    – nw1
    Feb 28, 2011 at 17:12
  • why no one has talked about mapguide ? what about it ? any experiences using it ?
    – geogeek
    Apr 21, 2013 at 12:32
  • For those who is interested in the performance comparison, the following blog post can be quite interesting and useful: "Benchmarking Mapping Toolkits in Tile Seeding" - mapsurfernet.com/blog/…
    – Runge
    Jun 25, 2015 at 10:44
  • Mmmm unfortunately there is no commenting option on that blog-post. The geoserver is really bad, and I am guessing they just used the standard install. They are using the wrong JRE, and I am guessing they did not install native imaging: docs.geoserver.org/stable/en/user/production/java.html
    – nathanvda
    Jun 25, 2015 at 16:48

5 Answers 5


This question has been converted to Community Wiki and wiki locked because it is an example of a question that seeks a list of answers and appears to be popular enough to protect it from closure. It should be treated as a special case and should not be viewed as the type of question that is encouraged on this, or any Stack Exchange site, but if you wish to contribute more content to it then feel free to do so by editing this answer.

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:


  • 5
    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, 2011 at 16:40
  • 3
    And tileMill could be added since the last update ( tilemill.com ) ;-)
    – simo
    Feb 28, 2011 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, 2011 at 18:47

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).


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


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

  • 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, 2011 at 14:27

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)

  • 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, 2011 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, 2011 at 18:30

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.

  • 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, 2011 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. Jul 25, 2012 at 18:32
  • Thanks, I didn't know about Geomajas, but I see little activity on github lately. Apr 2, 2015 at 9:15

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