Tôi có nên sử dụng WFS, WMS hoặc SOS xem xét hiệu suất và bảo mật?


10

Nhiệm vụ của tôi là phát triển một ứng dụng web sẽ trực quan hóa dữ liệu tạm thời trên bản đồ và tạo ra một loại luồng dữ liệu (hoặc hình ảnh động) từ hình ảnh / dữ liệu đã nhận được từ máy chủ.

Với mục đích này, tôi nghĩ sẽ sử dụng các dịch vụ web OpenLayers API và OGC WFS hoặc WMS hoặc SOS.

Một trong những yêu cầu chính là gửi dữ liệu an toàn và nhanh chóng với hiệu suất cao.

Câu hỏi tôi có là: Dịch vụ nào ngoài WFS, WMS và SOS sẽ tốt để sử dụng cho một ứng dụng web như vậy về hiệu suất, bảo mật, độ tin cậy, v.v.?

Tôi biết mỗi dịch vụ web cung cấp các tính năng khác nhau. Nhưng, nếu tôi sử dụng WMS cho dữ liệu tạm thời của mình để có được hình ảnh bản đồ bằng cách thực hiện một số loại tổng hợp trong cơ sở dữ liệu (vì đó là trực quan hóa tạm thời), thì ứng dụng của tôi sẽ bị chậm trên một số thiết bị như điện thoại di động / máy tính bảng vì có thể mất nhiều thời gian để lấy hình ảnh

Mặt khác, nếu tôi sử dụng SOS hoặc WFS, sẽ có rủi ro cho ứng dụng của chúng tôi gửi dữ liệu thô, điều này thực sự không an toàn.

Nó sẽ thực sự tuyệt vời nếu bất cứ ai có thể cho tôi một lời khuyên hoặc suy nghĩ về nó.

Nếu bạn nghĩ, câu hỏi này không thể được trả lời, vậy thì ai có thể cho tôi biết làm thế nào tôi nên tiến hành thêm cho một vấn đề dựa trên nghiên cứu như vậy không?


định nghĩa "hiệu suất cao" và chúng ta đang nói về bao nhiêu dữ liệu / khác nhau trên mỗi khung hình khóa hoạt hình?
Ragi Yaser Burhum

Câu trả lời:


7

Tôi biết mỗi dịch vụ web cung cấp các tính năng khác nhau. Nhưng, nếu tôi sử dụng dịch vụ WMS cho dữ liệu tạm thời của mình để có được hình ảnh bản đồ bằng cách thực hiện một số loại tổng hợp trong cơ sở dữ liệu (vì đó là trực quan hóa tạm thời), thì ứng dụng của tôi sẽ bị chậm trên một số thiết bị như điện thoại di động / máy tính bảng vì có thể mất mất nhiều thời gian để lấy hình ảnh. "

Tôi không đồng ý với tuyên bố này vì ba lý do.

Thời gian cần thiết để tìm nạp dữ liệu WFS cũng có thể cao, vì các truy vấn không gian cũng có thể chậm. Ý tôi là, số lượng byte thô được gửi không phải là yếu tố giới hạn duy nhất.

Một lý do khác là vì đầu ra WFS có xu hướng dài dòng - bởi vì sử dụng GML , là một "phương ngữ" của XML, để vận chuyển dữ liệu -, bạn có thể kết thúc việc gửi nhiều byte thô hơn nếu WMS được sử dụng.

Cuối cùng, dữ liệu vectơ - như đầu ra WFS - sẽ đòi hỏi nhiều sức mạnh tính toán hơn từ các thiết bị khách, bởi vì chúng sẽ phải kết xuất các tính năng; mặt khác, các phản hồi WMS đối với các yêu cầu GetMap đã được hiển thị, điều này ngụ ý ít hoạt động hơn ở phía máy khách. Do đó, sử dụng dữ liệu vectơ trên các máy khách có khả năng tính toán hạn chế có thể là một vấn đề.


1
cho đến khi tôi thấy câu trả lời này tôi sẽ thêm một cái gì đó tương tự. Các tính năng của vectơ có thể rất phức tạp và việc chuyển dữ liệu này qua WFS có thể dẫn đến tải trọng XML rất lớn. Với WMS, mối quan tâm chính của bạn là thời gian xử lý cần thiết để tạo hình ảnh trên máy chủ dày (máy khách mỏng), nhưng ít nhất hình ảnh có thể được lưu trong bộ nhớ cache để tăng hiệu suất. Với WFS, bạn phải tải lên cùng một XML mỗi lần và lưu lượng truy cập mạng này có thể có khả năng ảnh hưởng đến hiệu suất nhận được nhiều hơn hoặc nhiều hơn so với việc tạo hình ảnh (vì vậy máy chủ mỏng / máy khách dày có thể không nhất thiết giúp bạn có thể mở rộng hơn).
tomfumb

4
Bạn không phải sử dụng GML với WFS, GeoJOSN và shapefiles có thể được gửi chẳng hạn. Một máy chủ tốt cũng sẽ nén dữ liệu. Nhưng WMS vẫn sẽ nhanh hơn cho bất kỳ tập dữ liệu thực tế nào.
Ian Turton

Cảm ơn bạn rất nhiều vì câu trả lời của bạn. Sau khi nghiên cứu thêm một chút, tôi thấy rằng sử dụng WMS trong ứng dụng web như vậy sẽ là một lựa chọn tốt. Sẽ hiệu quả hơn khi truyền hình ảnh kết xuất đến máy khách. Đặc biệt đối với các tập dữ liệu lớn, việc truyền hình ảnh được hiển thị có thể nhanh hơn mã hóa, truyền và giải mã các tệp XML lớn.
Rajat Arora

6

WMS / WFS bảo mật với HTTPS sử dụng chứng chỉ phía máy khách để xác thực người dùng cá nhân cho mỗi yêu cầu đến máy chủ. Có lợi thế là bạn không phải thay đổi triển khai WMS / WFS của mình (ngoại trừ bằng cách đặt nó trên máy chủ HTTPS ) nhưng có nhược điểm đáng kể là bạn cần phân phối chứng chỉ cho người dùng của mình - thường không được chấp nhận ngoại trừ trong các tình huống bảo mật cao .

WFS cho phép truy cập trực tiếp thống nhất vào các tính năng được lưu trữ trên máy chủ. Sử dụng WFS khi họ muốn thực hiện các hành động như:

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 cho phép truy cập kết xuất đồng nhất các tính năng được lưu trữ trên máy chủ. Sử dụng WMS khi bạn muốn thực hiện các hành động như:

Producing Maps
Very simple Querying of data

Nó phức tạp hơn một chút khi giao dịch với WMS và HTTPS

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

http://www.w3.org/Prot Protocol / AFTP / 1.0 / draft-ietf-http-spec.html # aAA

Đã sử dụng WMS với FME Server và Geosever với HTTPS và cả hai đều hoạt động tốt.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.