성능과 보안을 고려하여 WFS, WMS 또는 SOS를 사용해야합니까?


10

내 임무는 맵에서 시간 데이터를 시각화하고 서버에서 수신 한 이미지 / 데이터에서 일종의 데이터 흐름 (또는 애니메이션)을 생성하는 웹 응용 프로그램을 개발하는 것입니다.

이를 위해 OpenLayers API 및 OGC 웹 서비스 WFS, WMS 또는 SOS를 사용하려고합니다.

주요 요구 사항 중 하나는 고성능으로 데이터를 안전하고 빠르게 전송하는 것입니다.

내가 가진 질문은 WFS, WMS 및 SOS 중 어떤 서비스가 성능, 보안, 안정성 등의 측면에서 그러한 웹 응용 프로그램에 사용하기에 좋을까요?

각 웹 서비스가 다른 기능을 제공한다는 것을 알고 있습니다. 그러나 (시간적 시각화이므로) 데이터베이스에서 일종의 집계를 수행하여 시간 이미지에 WMS를 사용하여 맵 이미지를 얻으면 휴대 전화 / 태블릿과 같은 일부 장치에서 응용 프로그램이 느려질 수 있습니다. 이미지를 가져올 시간입니다.

반면에, SOS 또는 WFS를 사용하는 경우 애플리케이션이 원시 데이터를 전송할 위험이 있으며 이는 실제로 안전하지 않습니다.

누군가 나에게 조언이나 생각을 줄 수 있다면 정말 좋을 것입니다.

당신이 생각한다면,이 질문에 대답 할 수는 없으며, 그런 연구 기반 문제에 대해 어떻게 더 나아갈 수 있습니까?


"고성능"을 정의하고 애니메이션 키 프레임마다 얼마나 많은 데이터를 이야기하고 있습니까?
Ragi Yaser Burhum

답변:


7

각 웹 서비스가 다른 기능을 제공한다는 것을 알고 있습니다. 그러나 임시 데이터에 대해 WMS 서비스를 사용하여 데이터베이스에서 일종의 집계를 수행하여 맵 이미지를 얻으려면 (시간적 시각화이므로) 휴대 전화 / 태블릿과 같은 일부 장치에서는 응용 프로그램이 느려질 수 있습니다 이미지를 가져 오는 데 많은 시간이 걸렸습니다. "

나는 세 가지 이유로이 진술에 동의하지 않습니다.

공간 쿼리도 느릴 수 있으므로 WFS 데이터를 가져 오는 데 필요한 시간도 길어질 수 있습니다. 전송 된 원시 바이트의 양이 유일한 제한 요소는 아닙니다.

또 다른 이유는 WFS 출력이 장황한 경향이 있기 때문 입니다. 데이터를 전송하기 위해 XML의 '방언'인 GML을 사용하기 때문에 WMS를 사용했을 때보 다 더 많은 원시 바이트 전송을 종료 할 수 있습니다.

마지막으로 WFS 출력과 같은 벡터 데이터는 기능을 렌더링해야하기 때문에 클라이언트 장치에서 더 많은 컴퓨팅 성능을 요구합니다. 반면, GetMap 요청에 대한 WMS 응답은 이미 렌더링되어 클라이언트 측의 작업이 줄어 듭니다. 따라서 컴퓨팅 성능이 제한된 클라이언트에서 벡터 데이터를 사용하는 것이 문제가 될 수 있습니다.


1
이 답변을 볼 때까지 비슷한 것을 추가하려고합니다. 벡터 기능은 엄청나게 복잡 할 수 있으며 WFS를 통해이 데이터를 전송하면 엄청난 XML 페이로드가 발생할 수 있습니다. WMS를 사용하는 경우 주요한 문제는 씩 서버 (씬 클라이언트)에서 이미지를 생성하는 데 필요한 처리 시간이지만 성능 향상을 위해 최소한 이미지를 캐시 할 수 있습니다. WFS를 사용하면 매번 동일한 XML을 업로드해야하며이 네트워크 트래픽은 이미지 생성 이상의 성능에 영향을 줄 수 있습니다 (씬 서버 / 씬 클라이언트가 반드시 확장 성을 높일 필요는 없습니다).
tomfumb

4
WML과 함께 GML을 사용할 필요가 없으며 GeoJOSN과 shapefile을 전송할 수 있습니다. 좋은 서버도 데이터를 압축합니다. 그러나 WMS는 실제 데이터 세트에 비해 여전히 빠릅니다.
Ian Turton

답변 해 주셔서 감사합니다. 좀 더 많은 연구를 한 결과, 그러한 웹 응용 프로그램에서 WMS를 사용하는 것이 좋은 옵션이라는 것을 알았습니다. 클라이언트에게 렌더 이미지를 전송하는 것이 더 효율적입니다. 특히 큰 데이터 세트의 경우 렌더링 된 이미지의 전송이 큰 XML 파일을 인코딩, 전송 및 디코딩하는 것보다 빠를 수 있습니다.
Rajat Arora

6

HTTPS가있는 보안 WMS / WFS는 클라이언트 측 인증서를 사용하여 서버에 대한 각 요청에 대해 개별 사용자를 인증합니다. WMS / WFS 구현을 변경할 필요는 없지만 ( HTTPS 서버 에 배치하는 것을 제외하고 ) 사용자에게 인증서를 배포해야한다는 상당한 단점이 있습니다. 보안 수준이 높은 상황을 제외하고는 일반적으로 허용되지 않습니다. .

WFS를 사용하면 서버에 저장된 기능에 균일하게 직접 액세스 할 수 있습니다. 다음과 같은 작업을 수행하려는 경우 WFS를 사용하십시오.

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를 사용하면 서버에 저장된 기능에 대한 균일 한 렌더링 액세스가 가능합니다. 다음과 같은 작업을 수행하려는 경우 WMS를 사용하십시오.

Producing Maps
Very simple Querying of data

WMS 및 HTTPS를 다룰 때 조금 더 복잡해집니다.

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

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

FME Server와 함께 WMS를 사용하고 HTTPS와 함께 Geosever를 사용했으며 모두 잘 작동합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.