#postgresql #leaflet #mapbox #openlayers-3 #geoserver
#postgresql #брошюра #mapbox #openlayers-3 #геосервер
Вопрос:
Мое веб-приложение состоит из интерактивной карты (mapbox / openlayers3 / leaflet), на которой отображаются точки. Веб-приложение будет иметь две функции:
- Представление, отображающее данные в реальном времени
- Представление, которое можно фильтровать по определенным атрибутам
Наибольший трафик в этом веб-приложении будет составлять около 42 запросов каждые 30 секунд. В ответ на это сервер ответит в зависимости от того, является ли запрос WMS или WFS. В случае WFS он отправит около 800 небольших ( /- 5 столбцов, включая широту / lng) функций по каждому запросу. В случае WMS он будет отображать maptiles на основе максимум 150 000 точек с пользовательским SLD. Я хочу реализовать перечисленные выше функции и обеспечить оптимальную производительность приложения. Данные размещаются в удаленной базе данных postgress, Geoserver предоставит службы WMS / WFS для отправки изображений / данных клиенту.
Я планировал использовать WFS-сервис для первого просмотра, поскольку он только визуализирует данные в реальном времени. Это означает, что приложение будет проверять удаленную базу данных каждые 30 секунд на наличие изменений, если в базе данных появятся новые точки, они будут отображаться. Я подумал, что WFS вызовет меньшую нагрузку на сервер, поскольку ему не нужно отображать изображения. Каждые 30 секунд будет 40 новых максимальных точек. Чтобы проверить наличие новых функций, я хочу выполнить GetFeature с maxFeature=’1′ от клиента и проверить общий ключ, который отправляется сервером.
Для представления, в котором будут отображаться отфильтрованные данные, я хочу использовать WMS-сервис, поскольку он, вероятно, будет отображать / — 150 000 баллов за запрос. Итак, я решил, что WMS будет работать лучше, я не знаю, можно ли использовать geowebcache, поскольку набор данных будет постоянно меняться. Также я хочу использовать пользовательский SLD для создания тепловой карты точек, поэтому я не буду отображать фактические точки. Пример ответа SLD тепловой карты -> user30184 на это: https://gis.stackexchange.com/questions/102563/heat-map-density-map-from-dynamic-points-table-in-mapserver-geoserver вопрос.
Каковы будут узкие места в моем решении, удаленный сервер БД, геосервер или оба? Какие спецификации понадобятся моему серверу для правильной обработки этого?
Комментарии:
1. Мне только что пришло в голову, что я мог бы использовать плагин для генерации тепловой карты на стороне клиента, чтобы уменьшить нагрузку на сервер.