Performans ve güvenliği dikkate alarak WFS, WMS veya SOS kullanmalı mıyım?


10

Görevim, geçici verileri harita üzerinde görselleştirecek ve sunucudan alınan görüntülerden / verilerden bir tür veri akışı (veya animasyon) üretecek bir web uygulaması geliştirmektir.

Bu amaçla, OpenLayers API ve OGC web hizmetleri WFS veya WMS veya SOS kullanmayı düşünüyorum.

Ana gereksinimlerden biri, verileri yüksek performansla güvenli ve hızlı bir şekilde göndermektir.

Benim sorum şu: WFS, WMS ve SOS dışında hangi hizmet, performans, güvenlik, güvenilirlik vb. Açısından böyle bir web uygulaması için kullanmak için iyi olacak?

Her web servisinin farklı özellikler sunduğunu biliyorum. Ancak, geçici verilerim için WMS'yi veritabanında bir tür toplama yaparak (geçici görselleştirme olduğu gibi) harita görüntüleri almak için kullanırsam, uygulamam cep telefonları / tabletler gibi bazı cihazlarda yavaşlayabilir, çünkü görüntüleri getirme zamanı.

Öte yandan, SOS veya WFS kullanırsam, uygulamamızın gerçekten güvenli olmayan ham veri gönderme riski olacaktır.

Herkes bana bir tavsiye ya da düşünceler verebilir eğer gerçekten harika olacak.

Eğer bu soru sadece cevaplanamazsa, bana böyle bir araştırmaya dayalı sorun için nasıl bir yol izlemeliyim?


"yüksek performans" tanımlıyor ve animasyon anahtar karesi başına ne kadar veri hakkında konuşuyoruz / ne kadar farklı?
Ragi Yaser Burhum

Yanıtlar:


7

Her web servisinin farklı özellikler sunduğunu biliyorum. Ancak, geçici verilerim için veritabanında bir tür toplama gerçekleştirerek (geçici görselleştirme olduğu gibi) geçici verilerim için WMS hizmetini kullanırsam, uygulamam alabileceği gibi cep telefonları / tabletler gibi bazı cihazlarda yavaşlar görüntüleri almak için çok zaman. "

Bu ifadeye üç nedenden dolayı katılmıyorum.

WFS verilerini almak için gereken süre de yüksek olabilir, çünkü uzamsal sorgular da yavaş olabilir. Yani, gönderilen ham bayt miktarı tek sınırlayıcı faktör değildir.

Başka bir neden, WFS çıktısının ayrıntılı olma eğilimi göstermesi - veri taşımak için XML'in bir 'lehçesi' olan GML'yi kullandığından, WMS'nin kullanıldığından daha fazla ham bayt göndermeye son vermenizdir.

Son olarak, vektör verileri - WFS çıkışı gibi - istemci cihazlardan daha fazla bilgi işlem gücü talep edecektir, çünkü özellikleri oluşturmak zorunda kalacaklar; Öte yandan, GetMap isteklerine verilen WMS yanıtları zaten oluşturulmuş, bu da istemci tarafında daha az çalışma anlamına geliyor. Bu nedenle, sınırlı bilgi işlem gücüne sahip istemcilerde vektör verilerinin kullanılması bir sorun olabilir.


1
Bu cevabı görene kadar benzer bir şey ekleyeceğim. Vektör özellikleri son derece karmaşık olabilir ve bu verilerin WFS aracılığıyla aktarılması büyük XML yüklerine neden olabilir. WMS ile ana endişeniz, kalın sunucunuzda (ince istemci) görüntüyü oluşturmak için gereken işlem süresidir, ancak en azından görüntü performans kazanımları için önbelleğe alınabilir. WFS ile her seferinde aynı XML'yi yüklemeniz gerekir ve bu ağ trafiği algılanan performansı görüntü oluşturma işleminden daha fazla veya daha fazla etkileyebilir (bu nedenle, ince sunucu / kalın istemci sizi daha ölçeklendirilebilir olmayabilir).
tomfumb

4
GML'yi WFS ile kullanmak zorunda değilsiniz, GeoJOSN ve şekil dosyaları gönderilebilir. İyi bir sunucu da verileri sıkıştıracaktır. Ancak WMS, herhangi bir gerçekçi veri kümesi için hala daha hızlı olacaktır.
Ian Turton

Cevaplarınız için çok teşekkür ederim. Biraz daha araştırma yaptıktan sonra, böyle bir web uygulamasında WMS kullanmanın iyi bir seçenek olacağını buldum. Bir render görüntüsünü istemciye iletmek daha verimli olacaktır. Özellikle büyük veri kümeleri için, oluşturulan bir görüntünün iletimi büyük XML dosyalarını kodlama, iletme ve kod çözme işlemlerinden daha hızlı olabilir.
Rajat Arora

6

HTTPS ile güvenli WMS / WFS, sunucuya yapılan her istek için tek tek kullanıcıların kimliğini doğrulamak üzere istemci tarafı sertifikalar kullanır. WMS / WFS uygulamanızı değiştirmek zorunda kalmamanız avantajı vardır ( HTTPS sunucusuna koymak dışında ), ancak kullanıcılarınıza sertifika dağıtmanız gereken önemli bir dezavantaja sahiptir - yüksek güvenlikli durumlar dışında normalde kabul edilemez .

WFS, bir sunucuda depolanan özelliklere eşit doğrudan erişim sağlar. Aşağıdakiler gibi eylemler gerçekleştirmek istediklerinde bir WFS kullanın:

query a dataset and retrieve the features
find the feature definition (feature’s property names and types)
add features to dataset
delete feature from a dataset
update feature in a dataset
lock features to prevent modification

WMS, bir sunucuda depolanan özelliklere tekdüze oluşturma erişimi sağlar. Aşağıdakiler gibi eylemler gerçekleştirmek istediğinizde bir WMS kullanın:

Producing Maps
Very simple Querying of data

WMS ve HTTPS ile uğraşırken biraz daha karmaşıklaşıyor

http://idlastro.gsfc.nasa.gov/idl_html_help/HTTP_Authentication_Security_and_Encodinga.html

ve http://www.w3.org/Protocols/HTTP/1.0/draft-ietf-http-spec.html#AA

FME Server ile WMS ve HTTPS ile Geosever kullandık ve her ikisi de iyi çalışıyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.