เปรียบเทียบเซิร์ฟเวอร์ GIS โอเพ่นซอร์สที่แตกต่างกันอย่างไร


35

ขณะนี้ฉันรู้เซิร์ฟเวอร์ GIS โอเพนซอร์สต่อไปนี้:

  • Geoserver : รองรับ Java, เวกเตอร์และบิตแมปนอกจากนี้ยังรองรับ ใกล้เคียงกับ mapserver (ประสิทธิภาพสูง)
  • mapserver : c / c ++ เคยเป็นเซิร์ฟเวอร์ที่เร็วที่สุด ดีกว่าสำหรับแรสเตอร์กว่าเวกเตอร์?
  • mapguide : ไม่ทราบเรื่องนี้
  • Mapnik : เด็กใหม่ในบล็อกหรือไม่ ไม่รู้มากเกี่ยวกับมัน แต่มันดูน่าสนใจ
  • Mapfish : เท่าที่ฉันรู้เพียงดึงข้อมูลเวกเตอร์เพื่อแสดงใน openlayers มีการใช้งานรางอยู่

ถ้าเป็นไปได้ฉันต้องการเปรียบเทียบบางอย่างคุณเลือกหรือไม่ชอบและทำไม

ฉันกำลังมองหาการสร้างเว็บไซต์ทางรถไฟและต้องการเซิร์ฟเวอร์ GIS บางประเภท ฉันต้องการข้อมูลแรสเตอร์และเวคเตอร์ (คลิกได้) ทำได้ด้วยเซิร์ฟเวอร์เดียวหรือไม่ ฐานข้อมูลส่วนหลังจะเป็น Postgis


1
เล็ก ๆ น้อย ๆ นอกเรื่อง แต่นี่เป็นสิ่งที่ดีในการอ่านและเพิงบางอย่างเกี่ยวกับ Mapnik: alistapart.com/articles/takecontrolofyourmaps
NW1

ทำไมไม่มีใครพูดคุยเกี่ยวกับ mapguide? แล้วมันล่ะ ประสบการณ์การใช้งานมัน?
geogeek

สำหรับผู้ที่มีความสนใจในการเปรียบเทียบประสิทธิภาพการโพสต์บล็อกต่อไปนี้น่าสนใจและมีประโยชน์: "เครื่องมือการทำแผนที่การเปรียบเทียบในการจัดเรียงแบบเรียงต่อเนื่อง
Runge

Mmmm น่าเสียดายที่ไม่มีตัวเลือกการแสดงความคิดเห็นในบล็อกโพสต์ geoserver แย่มากและฉันเดาว่าพวกเขาเพิ่งใช้การติดตั้งมาตรฐาน พวกเขาใช้ JRE ผิดและฉันเดาว่าพวกเขาไม่ได้ติดตั้งภาพดั้งเดิม: docs.geoserver.org/stable/en/user/production/java.html
nathanvda

คำตอบ:


14

คำถามนี้ถูกแปลงเป็น Community Wiki และ wiki ที่ถูกล็อกเนื่องจากเป็นตัวอย่างของคำถามที่ค้นหารายการคำตอบและดูเหมือนจะเป็นที่นิยมมากพอที่จะป้องกันไม่ให้ปิด ควรได้รับการพิจารณาว่าเป็นกรณีพิเศษและไม่ควรถูกมองว่าเป็นประเภทของคำถามที่ได้รับการสนับสนุนในเรื่องนี้หรือไซต์สแต็ก Exchange ใด ๆ แต่ถ้าคุณต้องการมีส่วนร่วมกับเนื้อหามากขึ้น .


Laurent Jegou อัปเดตเอกสารที่ยอดเยี่ยมในรายการโซลูชั่นการทำแผนที่เว็บที่รู้จักทั้งหมดและขอบเขตและคุณสมบัติของพวกเขา (ทั้งลูกค้าและเทคโนโลยีเซิร์ฟเวอร์) น่าเสียดายที่มันเป็นภาษาฝรั่งเศส แต่เนื่องจากทุกอย่างเกี่ยวกับสิ่งทางเทคนิคคุณจะสามารถเข้าใจได้ง่าย

แน่นอนว่ามันจะไม่เพียงพอที่จะเลือกสิ่งที่ถูกต้อง แต่อย่างน้อยคุณจะสามารถยกเว้นบางอย่างได้อย่างรวดเร็ว

เวอร์ชันล่าสุดมีให้ที่ url ต่อไปนี้:

http://www.geotests.net/cours/sigma/webmapping/2016/fig6_2016.pdf


4
นั่นเป็นแผนภูมิที่น่าสนใจอย่างไม่น่าเชื่อ ผลงานยอดเยี่ยมของ Laurent Jegou! ขอบคุณสำหรับลิงค์! และสำหรับฉันก็แสดงให้เห็นว่าคู่แข่งรายใหม่: geomajas และ deegree
nathanvda

3
และสามารถเพิ่ม tileMill ได้ตั้งแต่การอัปเดตครั้งล่าสุด ( tilemill.com ) ;-)
simo

1
TileMill ดูดีจริงๆ Mapnik พร้อมคอนโซลการจัดการเพิ่มเติม (หรือดังนั้นฉันอ่านมัน) ขอบคุณสำหรับเคล็ดลับ!
nathanvda

8

นี่อาจเป็นการสนทนาที่ยิ่งใหญ่ฉันจะพยายามให้คะแนนสั้น ๆ แก่คุณสักสองสามคำ คุณสามารถเปรียบเทียบซอฟต์แวร์ในรายการของคุณจากมุมมองแบบต้นไม้:

1) การแสดง

ที่นี่มาตรฐานอ้างอิงที่แนะนำแล้วจะเป็นเพื่อนที่ดีที่สุดของคุณอย่างน้อยสำหรับ WMS

2) บริการที่นำเสนอ

โดยทั่วไปคุณอาจพิจารณาว่าบริการใดบ้างที่นำเสนอจากซอฟต์แวร์: บริการนี้อาจสอดคล้องกับมาตรฐานเว็บของ OGC (WMS, WFS, WCS, WPS, SOS, OCS ... ) หรือไม่

GeoServer นั้นเสนอ WMS, WCS และ WFS (สำหรับสองอันสุดท้ายเป็นการใช้งานอ้างอิง) นอกจากนี้ยังสามารถให้การสนับสนุน WPS ด้วยส่วนขยาย

MapServer เสนอ WMS, WFS, WCS และ SOS แต่สำหรับ GeoServer นั้นไม่มีคุณสมบัติการทำธุรกรรมสำหรับ WFS (WFS-T) ด้วยความเคารพต่อ GeoServer ในหลายกรณีมันมีค่าใช้จ่ายด้านสถาปัตยกรรมน้อยลง (เนื่องจากทำงานกับ Apache httpd) และมีรายการรูปแบบข้อมูลขนาดใหญ่ที่รองรับผ่านทาง GDAL / OGR มันขาดเว็บอินเทอร์เฟซผู้ดูแลระบบที่ดี (เช่นใน GeoServer) แต่ Mapfiles สามารถแก้ไขและปรับแต่งได้ง่ายผ่านเชลล์หรือ API API

Mapnik เป็นห้องสมุดที่มีประสิทธิภาพที่สามารถใช้เป็น WMS (และเป็นไปตามมาตรฐานล่าสุดของ FOSS4G 2010 ประสิทธิภาพของมันน่าประทับใจ)

มีซอฟต์แวร์อื่น ๆ ที่รู้จักกันดีที่ให้การใช้งานสำหรับ WPS (pyWPS, ZooProject, 52n WPS), สำหรับ OCS (GeoNetwork) และอื่น ๆ

หากคุณพิจารณา MapFish คุณอาจจำเป็นต้องเพิ่มรายการ GeoDjango และ FeatureServer ที่ไม่ได้นำมาตรฐาน GIS ไปใช้กับเว็บเซอร์วิส GeoNode เป็นความพยายามที่ยอดเยี่ยมในการ web2.0f SDI (เช่นด้วยแท็กและเนื้อหาทางสังคม)

ลองดูเด็กคนใหม่ในบล็อกด้วย: TileMill ซึ่งส่วนใหญ่เป็นพื้นฐานของ Mapnik และสร้างบนกรอบงาน node.js

3) สถาปัตยกรรม

GeoServer และ GeoNetwork เป็นพื้นฐานของ Java (ดังนั้นพวกเขาต้องการ servlet engine เช่น Tomcat)

MapServer และ Mapnik นั้นใช้ C และทำงานได้ดีบน Apache httpd

โปรแกรมอื่น ๆ ส่วนใหญ่ใช้ Python โดยใช้เฟรมเวิร์กต่าง ๆ : MapFish ใช้ Pylons, GeoDjango และ GeoNode ใช้ Django, FeatureServer และ pyWPS ล้วนๆใน Python พวกเขาสามารถทำงานใน httpd ผ่าน modPython หรือ WSGI หรือเป็น CGI

โปรดทราบว่าซอฟต์แวร์เกือบทั้งหมดนี้ใช้ไลบรารี ubiquos GDAL (มักพบในซอฟต์แวร์ลิขสิทธิ์)


7

จากมุมมองของประสิทธิภาพคุณอาจพบว่ามีผลการเปรียบเทียบที่น่าสนใจ:

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

ข้อมูลเกี่ยวกับมาตรฐานของตัวเองสามารถพบได้ที่http://wiki.osgeo.org/wiki/Benchmarking_2010


เด็ดมาก จากสิ่งที่ฉันเห็น Mapserver ยังคงเป็นสัตว์ร้ายดูเหมือนว่าจะเอาชนะคู่แข่งทุกคนได้ ฉันสมมติว่า Geoserver จะเข้าร่วมเป็นอันดับที่สอง แต่ mapnik ทำงานได้ดีอย่างน่าประหลาดใจ แม้ใน Postgis ดูเหมือนว่าจะมีประสิทธิภาพเหนือกว่า mapserver (โดยไม่มีการคัดค้าน) ดังนั้นพวกเขาจะเปรียบเทียบคุณสมบัติที่ชาญฉลาดได้อย่างไร
nathanvda

7

นอกจากนี้ยังมีเซิร์ฟเวอร์ QGIS (WMS) อ่าน"เซิร์ฟเวอร์ QGIS - เซิร์ฟเวอร์ WMS สำหรับคนจำนวนมาก"สำหรับข้อมูลเพิ่มเติม

เราได้รวบรวมขนาดเล็กเปรียบเทียบคุณลักษณะระหว่าง Geoserver และ UMN MapServer

MapFish เป็นกรอบงานที่ดี แต่คุณยังจำเป็นต้องใช้เซิร์ฟเวอร์แผนที่บางส่วนในพื้นหลัง หากคุณทำงานกับ Rails ดูเหมือนว่า MapFish เป็นวิธีที่ดีในการไป:

กรอบการทำงานของ MapFish ถูกสร้างขึ้นรอบ ๆ โปรโตคอลที่ใช้ HTTP แบบเปิดช่วยให้สามารถนำไปใช้งานร่วมกันได้หลากหลาย นอกเหนือจากการใช้งานการอ้างอิงที่จัดทำโดยเฟรมเวิร์กที่ใช้ Python / Pylons การใช้งานอื่น ๆ สองแบบนั้นมีอยู่ในปัจจุบัน: ปลั๊กอิน Ruby / Rails (GPLv3) และปลั๊กอิน PHP / Symfony (BSD)


2
QGIS Mapserver ดูน่าสนใจโดยเฉพาะอย่างยิ่งเนื่องจากมีการจับคู่กับไคลเอนต์ QGIS ซึ่งคุณสามารถเตรียม mapfile ของคุณได้ การเปรียบเทียบระหว่าง Geoserver และ Mapserver ก็มีประโยชน์เช่นกัน อันที่จริง: อินเทอร์เฟซผู้ดูแลเว็บทั้งหมดเป็นข้อดีอย่างมากสำหรับฉัน
nathanvda

Geoserver นั้นเร็วในการตั้งค่าและอินเทอร์เฟซบนเว็บได้รับการปรับปรุงมากมายเมื่อเทียบกับรุ่นก่อนหน้า แต่ฉันคิดถึงความยืดหยุ่นของคุณสมบัติ mapscript ของ UMN Mapserver
underdark

2

มันอาจมีประโยชน์ที่จะพูดถึง geomajas เช่นกัน http://apps.geomajas.org/showcase/ มีประโยชน์อย่างยิ่งสำหรับการสร้างแอปพลิเคชั่น GIS แทนที่จะเป็นเพียงการนำเสนอแผนที่ ฉันชอบตัวเลือกการสืบค้นและการแก้ไขขั้นสูง


สิ่งที่ฉันได้ยินของ geomajas ก็คือมันใช้จาวาและมีกรอบการพัฒนาลูกค้า ดังนั้นจะบังคับให้ฉันพัฒนาด้วยจาวาสำหรับมัน ฉันต้องการบางสิ่งบางอย่างที่ฉันสามารถใช้ในเว็บไซต์ของตัวเอง (ทางรถไฟ) โดยใช้ openlayers หรือสิ่งที่คล้ายกัน ดังนั้นขอขอบคุณสำหรับคำแนะนำ แต่สำหรับฉันโดยส่วนตัวแล้วไม่เหมาะ เอกสารนี้: geotests.net/cours/sigma/webmapping/tableau_webmapping2010.pdfดูเหมือนจะยืนยันว่า
nathanvda

ไม่มาก Geomajas ยังมีอินเตอร์เฟส javascript สำหรับการพัฒนาลูกค้า สำหรับการปรับแต่งขั้นสูงในแผนที่คุณต้องใช้ Java แต่คุณสามารถทำได้ทุกอย่างผ่านทาง Javascript
Joachim Van der Auwera

ขอบคุณฉันไม่รู้เกี่ยวกับ Geomajas แต่ฉันเห็นกิจกรรมเล็ก ๆ น้อย ๆ เกี่ยวกับ GitHub เมื่อเร็ว ๆ นี้
david.perez
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.