さて、これは大規模な議論になる可能性があります。いくつかの言葉で簡単なポイントを紹介します。リストのソフトウェアをツリーの観点から比較できます。
1)パフォーマンス
ここでは、少なくともWMSの場合、すでに提案されているベンチマークが親友になります。
2)提供されるサービス
一般に、ソフトウェアから提供されるサービスを検討できます。このサービスはOGC Web標準(WMS、WFS、WCS、WPS、SOS、OCS ...)に準拠している場合とそうでない場合があります。
GeoServerは、WMS、WCS、およびWFSをネイティブに提供します(最後の2つはリファレンス実装です)。また、拡張機能を使用してWPSをサポートすることもできます。
MapServerはWMS、WFS、WCS、SOSを提供しますが、GeoServerに関しては、WFS(WFS-T)のトランザクション機能がありません。多くの場合、GeoServerに関しては、Apache httpdで動作するため、アーキテクチャのオーバーヘッドが少なく、GDAL / OGRでサポートされるデータ形式の膨大なリストがあります。素晴らしい管理Webインターフェイス(GeoServerのような)はありませんが、マップファイルはシェルまたはmapscript APIを介して簡単に変更およびカスタマイズできます。
Mapnikは、WMSとして使用できる強力なライブラリです(FOSS4G 2010の最新のベンチマークによると、そのパフォーマンスは印象的です)。
WPS(pyWPS、ZooProject、52n WPS)、OCS(GeoNetwork)、およびその他の実装を提供するソフトウェアは他にもあります。
MapFishを検討する場合は、GIS Webサービスの標準実装ではないGeoDjangoとFeatureServerのリストを追加する必要があります。GeoNodeは、SDIをweb2.0fyにするためのクールな試みです(つまり、タグやソーシャルなものを使用)。
また、ブロックの新しい子供に注目してください:TileMill、これは主にMapnikに基づいており、node.jsフレームワーク上に構築されています
3)アーキテクチャ
GeoServerとGeoNetworkはJavaベースです(したがって、Tomcatのようなサーブレットエンジンが必要です)。
MapServerとMapnikはCベースであり、Apache httpdで正常に動作します。
他のすべてのソフトウェアは、主に異なるフレームワークを使用するPythonに基づいています。MapFishはPylonsを使用し、GeoDjangoとGeoNodeはDjangoを使用し、FeatureServerとpyWPSは純粋なPythonです。それらはすべて、modPythonまたはWSGIを介して、またはCGIとしてhttpdで実行できます。
このソフトウェアのほとんどすべては、ユビキタスGDALライブラリに基づいていることに注意してください(多くの場合、プロプライエタリなソフトウェアにも含まれています)。