มีอะไรที่ดีกว่าสำหรับการเลือก? WMS หรือ WFS


9

ฉันต้องเลือกจากเลเยอร์และฉันสงสัยว่าฉันควรรับใช้เลเยอร์อย่างไร

ข้อกำหนดคือฉันต้องสามารถเลือกคุณสมบัติหลายอย่างพร้อมกันได้โดยการวาดกล่องหรือรูปหลายเหลี่ยม พวกเขาควรกลายเป็นไฮไลต์และฉันควรแสดงข้อมูลสำหรับคุณสมบัติทั้งหมด ฉันไม่จำเป็นต้องทำการแก้ไขใด ๆ

ฉันใช้ geoserver และ openlayers


คุณสามารถใช้งานแอปพลิเคชันนี้ได้หรือไม่ ฉันอยากรู้ว่าจะสามารถนำไปใช้ได้อย่างไร
Sam007

สำหรับการเลือกของคุณจะอธิบายได้เฉพาะ WFS เท่านั้น สำหรับ WMS คุณสามารถเลือกได้ที่ตำแหน่งจุดหรือคุณสามารถเลือกได้ด้วยคุณสมบัติ / คุณสมบัติที่เป็นที่รู้จักและ resymbolize โดยใช้ SLD
nmtoken

คำตอบ:


9

ดูเหมือนว่าคุณต้องการจัดเก็บเวกเตอร์ในเบราว์เซอร์และสอบถามลูกค้าฝั่ง ในการทำเช่นนั้นคุณจะต้องใช้ WFS

อย่างไรก็ตามข้อแม้อย่างหนึ่งคือเบราว์เซอร์มีข้อ จำกัด เกี่ยวกับจำนวนเวกเตอร์ที่สามารถแสดงได้ในคราวเดียว หากคุณกำลังจัดการกับชุดข้อมูลขนาดใหญ่หรือซับซ้อนอาจเป็นได้ว่าตัวเลือกเดียวของคุณคือใช้ WMS ซึ่งจะมีความซับซ้อนมากขึ้นในการดำเนินการเนื่องจากแบบสอบถามจะต้องทำฝั่งเซิร์ฟเวอร์


7
จริง ๆ แล้ว OpenLayers ไม่มีข้อ จำกัด เกี่ยวกับจำนวนของคุณสมบัติที่สามารถแสดงผลได้เบราว์เซอร์มีข้อ จำกัด เกี่ยวกับจำนวนของคุณลักษณะที่สามารถแสดงได้
Ian Turton

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

1
ฉันคิดว่า WMS จะตอบสนองวัตถุประสงค์ของเขาอย่างเงียบ ๆ ทำการประมวลผลที่ซับซ้อนที่ฝั่งเซิร์ฟเวอร์ (ถ้าเป็นไปได้) และแสดงผลลัพธ์ที่ฝั่งไคลเอ็นต์ คุณจะมีประสิทธิภาพที่ดีขึ้นและคุณยังสามารถใช้ตัวกรองแบบสคริปต์เช่นจุดตัด, ประกอบด้วย, ภายใน ฯลฯ ดูที่ geoserver
OptimizePrime

2
ฉันขอแนะนำให้คุณทำตามกระบวนทัศน์ทั้งสอง 1. ไคลเอ็นต์ดึงข้อมูลและประมวลผล / สืบค้นตามนั้นเซิร์ฟเวอร์จะให้บริการข้อมูลเท่านั้น (WFS) 2. ไคลเอ็นต์จะดูแลเฉพาะการเรนเดอร์เซิร์ฟเวอร์ทำการประมวลผล / เคียวรีภารกิจและส่งผลลัพธ์ (WMS) ทั้งสองมีโปรและคอน แต่ไม่ต้องทำกระบวนการและดาวน์โหลดข้อมูล (WFS) และทำให้เซิร์ฟเวอร์ทำการประมวลผล / สืบค้นด้วย สิ่งนี้จะสร้างค่าใช้จ่ายที่ไม่จำเป็นและทำให้สถานการณ์ยุ่งยาก
OptimizePrime

@iant: ฉันเข้าใจว่า openlayers ไม่มีข้อ จำกัด เกี่ยวกับจำนวนของคุณสมบัติที่สามารถแสดงผลได้ ฉันคิดว่าเราสามารถตกลงกันได้ว่ามีข้อ จำกัด ;)
canisrufus

5

หากคุณมีข้อมูลภาพอยู่แล้วเช่นแผนที่ฐานและเพียงแค่ต้องเลือกคุณสมบัติ WFS ก็จะทำงานได้ดีมาก แม้ว่าหากคุณต้องการส่วนประกอบภาพเพื่อให้เข้ากับการเลือกของคุณคุณจะได้รับบริการที่ดีขึ้นจากบริการ WMS เนื่องจากสร้างขึ้นสำหรับสิ่งนั้น

แม้ว่าจะได้ยินกรณีการใช้งานของคุณตามที่คุณอธิบาย แต่ฉันจะใช้บริการ WMS เป็นการส่วนตัว

นอกจากนี้บล็อก GeoServerเป็นบทความที่ยอดเยี่ยมเกี่ยวกับบริการทั้งสองและเมื่อคุณควรใช้ประโยชน์จากมัน

แก้ไข: ในบันทึกเพิ่มเติมหากคุณกำลังทำอะไรนอกเหนือจากการสืบค้นข้อมูลคุณสมบัติฉันเป็นกฎทั่วไปเพียงใช้ WFS มันเก่งเมื่อมันมาถึงการจัดการข้อมูลเมื่อเทียบกับบริการ OGC อื่น ๆ ที่ฉันใช้เมื่อเร็ว ๆ นี้ ยิ่งไปกว่านั้นให้ใช้เกลือเม็ดนั่นคือสิ่งที่ฉันได้รับจากการใช้บริการซึ่งเป็นเหตุผลว่าทำไมฉันจึงแนบลิงค์ก่อนหน้าและลิงค์ต่อไปนี้

มาตรฐาน OGC:
WMS
WFS


+1 สำหรับลิงก์เกี่ยวกับเวลาที่จะใช้ประโยชน์จากประเภทบริการ
OptimizePrime

ฉันคิดว่ามีการพิมพ์ผิด ดูเหมือนว่า "WFS" ครั้งที่สองของคุณดูเหมือนว่าควรจะอ่าน "WMS"
canisrufus

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