Eh bien, cela pourrait être une discussion énorme, je vais essayer de vous donner quelques points rapides en quelques mots. Vous pouvez comparer le logiciel dans votre liste des points de vue de l’arborescence:
1) performances
Ici, le repère déjà suggéré sera votre meilleur ami, du moins pour WMS
2) Services offerts
En règle générale, vous pouvez déterminer quels services sont proposés à partir du logiciel: ces services peuvent être conformes aux normes Web OGC (WMS, WFS, WCS, WPS, SOS, OCS ...) ou non.
GeoServer offre nativement WMS, WCS et WFS (pour les deux derniers, il s’agit de l’implémentation de référence). Il peut également prendre en charge WPS avec une extension.
MapServer offre les services WMS, WFS, WCS et SOS, mais il ne possède pas les fonctionnalités transactionnelles de GeoServer pour WFS (WFS-T). En ce qui concerne GeoServer, dans de nombreux cas, l’architecture est réduite (car elle fonctionne avec Apache httpd) et la liste des formats de données pris en charge via GDAL / OGR est considérable. Il manque une interface Web admin agréable (comme dans GeoServer), mais les mapfiles peuvent être facilement modifiés et personnalisés via l’API shell ou mapscript.
Mapnik est une puissante bibliothèque qui peut être utilisée en tant que WMS (et selon les dernières performances de FOSS4G 2010, ses performances sont impressionnantes).
Il existe d'autres logiciels bien connus qui fournissent des implémentations pour WPS (pyWPS, ZooProject, 52n WPS), pour OCS (GeoNetwork) et d'autres encore.
Si vous envisagez d'utiliser MapFish, vous devrez éventuellement ajouter les listes GeoDjango et FeatureServer qui n'offrent pas une implémentation standard des services Web SIG. GeoNode est une tentative géniale de web2.0fy une SDI (avec des balises et des objets sociaux).
Jetez également un coup d'œil au nouveau venu: TileMill, principalement basé sur Mapnik, et basé sur le framework node.js
3) architecture
GeoServer et GeoNetwork sont basés sur Java (ils nécessitent donc un moteur de servlet tel que Tomcat).
MapServer et Mapnik sont basés sur C et fonctionnent bien sur Apache httpd.
Tous les autres logiciels sont principalement basés sur Python et utilisent différents frameworks: MapFish utilise Pylons, GeoDjango et GeoNode utilise Django, FeatureServer et pyWPS sont en pur Python. Ils peuvent tous être exécutés dans httpd via modPython ou WSGI ou en tant que CGI.
Notez que presque tout ce logiciel est basé sur la bibliothèque ubiquos GDAL (souvent même dans les logiciels propriétaires).