В области вычислений GeoServer — это сервер с открытым исходным кодом , написанный на Java , который позволяет пользователям обмениваться, обрабатывать и редактировать геопространственные данные . Разработанный с учетом совместимости, он публикует данные из любого основного источника пространственных данных с использованием открытых стандартов . GeoServer превратился в простой метод подключения существующей информации к виртуальным глобусам , таким как Google Earth и NASA World Wind, а также к веб-картам, таким как OpenLayers , Leaflet , Google Maps и Bing Maps . GeoServer функционирует как эталонная реализация стандарта веб-службы объектов Открытого геопространственного консорциума , а также реализует спецификации веб-картографической службы , службы веб-покрытия и службы веб-обработки . [3]
GeoServer стремится работать как узел в свободной и открытой инфраструктуре пространственных данных . Точно так же, как HTTP-сервер Apache предлагает бесплатный и открытый веб-сервер для публикации HTML , GeoServer стремится сделать то же самое для геопространственных данных.
GeoServer считывает различные форматы данных, [4] в том числе:
С помощью стандартных протоколов он создает KML , GML , Shapefile, GeoRSS , PDF , GeoJSON , JPEG , GIF , SVG , PNG и другие. Кроме того, редактировать данные можно через транзакционный профиль WFS (WFS-T). [5] GeoServer включает интегрированный клиент OpenLayers для предварительного просмотра слоев данных.
GeoServer дополнительно поддерживает эффективную публикацию геопространственных данных в Google Earth посредством использования сетевых ссылок с использованием KML. Расширенные функции вывода данных Google Earth включают шаблоны для настраиваемых всплывающих окон, визуализацию времени и высоты, а также «суперналожения».
GeoServer использует GeoTools , библиотеку ГИС . [6]
GeoServer использует Spring Framework , предоставляя архитектуру отправки запросов для модулей, реализующих сервисы OGC. Приложение веб-администрирования использует калитку, что позволяет расширениям добавлять дополнительные экраны конфигурации. Приложение предоставляет REST API, реализованный с использованием Spring-mvc-framework .
GeoServer — это веб-приложение, поддерживающее любой распространенный контейнер сервлетов (доступен автономный дистрибутив с Jetty (веб-сервером) в качестве встроенного сервера). GeoWebCache, компонент кэширования на основе Java, аналогичный TileCache, входит в состав GeoServer, но доступен отдельно. [7] Аналогично, GeoServer упаковывает GeoTools как библиотеку Java, но она также доступна отдельно. [8]
GeoServer — это давнее приложение, претерпевшее несколько архитектурных изменений. GeoServer 1.0 был построен на основе структуры STRUTS, при этом для GeoServer 2.0 произошел переход на Spring и Wicket. Ранние версии REST API использовали restlet до перехода на Spring-mvc-framework .