Чи варто використовувати WFS, WMS або SOS з огляду на продуктивність та безпеку?


10

Моє завдання - розробити веб-додаток, який візуалізує тимчасові дані на карті та створює своєрідний потік даних (або анімацію) із зображень / даних, отриманих від сервера.

Для цього я думаю використовувати API OpenLayers та веб-сервіси OGC WFS або WMS або SOS.

Однією з головних вимог є надійне та швидке надсилання даних із високою продуктивністю.

У мене виникає питання: який сервіс із WFS, WMS та SOS буде корисним використовувати для таких веб-додатків з точки зору продуктивності, безпеки, надійності тощо?

Я знаю, що кожна веб-служба пропонує різні функції. Але якщо я використовую WMS для моїх тимчасових даних для отримання зображень на карті, виконуючи якусь агрегацію в базі даних (як це тимчасова візуалізація), то моє додаток буде повільним на деяких пристроях, таких як мобільні телефони / планшети, оскільки це може зайняти багато час для отримання зображень.

З іншого боку, якщо я використовую SOS або WFS, буде ризик нашої програми надсилати необроблені дані, що справді не є безпечним.

Це буде справді чудово, якщо хтось може дати мені поради чи думки з цього приводу.

Якщо ви думаєте, на це питання не можна просто відповісти, то хтось може дати мені уявлення, як мені далі діяти для такої проблеми, заснованої на дослідженні?


визначте "високу продуктивність" і скільки даних ми говоримо / відрізняємось за кадром анімаційного ключа?
Рагі Ясер Бурхум

Відповіді:


7

Я знаю, що кожна веб-служба пропонує різні функції. Але якщо я використовую службу WMS для моїх тимчасових даних для отримання зображень карти, виконуючи якусь агрегацію в базі даних (як це тимчасова візуалізація), то моє додаток буде повільним на деяких пристроях, таких як мобільні телефони / планшети, як це може зайняти багато часу для отримання зображень ".

Я не згоден з цим твердженням з трьох причин.

Час, необхідний для отримання даних WFS, також може бути великим, оскільки просторові запити також можуть бути повільними. Я маю на увазі, кількість відправлених байтів не є єдиним обмежуючим фактором.

Ще одна причина полягає в тому, що оскільки WFS вихід має тенденцію бути багатослівним - оскільки використовує GML , що є "діалектом" XML, для транспортування даних - ви можете закінчити надсилати більше необроблених байтів, ніж якби використовувалася WMS.

Нарешті, векторні дані, як-от вихід WFS, вимагатимуть більшої обчислювальної потужності від клієнтських пристроїв, оскільки їм доведеться надавати функції; з іншого боку, відповіді WMS на запити GetMap вже надаються, що передбачає менше роботи на стороні клієнта. Таким чином, використання векторних даних про клієнтів з обмеженою обчислювальною потужністю може бути проблемою.


1
поки я не побачив цю відповідь, збираюся додати щось подібне. Функції вектора можуть бути надзвичайно складними, і передача цих даних через WFS може призвести до величезних навантажень XML. Для WMS ваша головна проблема - час обробки, необхідний для створення зображення на вашому товстому сервері (тонкий клієнт), але принаймні зображення можна кешувати для підвищення продуктивності. За допомогою WFS вам потрібно кожного разу завантажувати один і той же XML, і цей мережевий трафік може потенційно впливати на сприйману продуктивність якнайбільше або більше, ніж на генерування зображень (тому тонкий сервер / товстий клієнт може не обов’язково робити вас більш масштабованими).
tomfumb

4
Вам не потрібно використовувати GML, наприклад, з WFS, GeoJOSN та форм-файлами. Хороший сервер також буде стискати дані. Але WMS все одно буде швидшим для будь-якого реалістичного набору даних.
Ян Тертон

Дуже дякую за ваші відповіді. Провівши трохи більше досліджень, я виявив, що використання WMS в такому веб-додатку буде хорошим варіантом. Ефективніше буде передавати зображення рендеру клієнту. Спеціально для великих наборів даних передача відображеного зображення може бути швидшою, ніж кодування, передача та декодування великих XML-файлів.
Раджат Арора

6

Захищені WMS / WFS за допомогою HTTPS використовують сертифікати на стороні клієнта для аутентифікації окремих користувачів для кожного запиту до сервера. Має перевагу в тому, що вам не доведеться змінювати свою 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

Використовували WMS з сервером FME і Geosever з HTTPS, і обидві працюють добре.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.