Book Image

Expert GeoServer

By : Ben Mearns
Book Image

Expert GeoServer

By: Ben Mearns

Overview of this book

GeoServer is open source, server-side software written in Java that allows users to share and edit geospatial data. In this book, you'll start by learning how to develop a spatial analysis platform with web processing services. Then you'll see how to develop an algorithm by chaining together geospatial analysis processes, which you can share with anyone in the world. Next you'll delve into a very important technique to improve the speed of your map application—tile caching. Here, you'll understand how tile caching works, how to develop an effective tile cache-supported web service, and how to leverage tile caching in your OpenLayers web application. Further on, you'll explore important tweaks to produce a performant GeoServer-backed web mapping application. Moving on, you'll enable authentication on the frontend and backend to protect sensitive map data, and deliver sensitive data to your end user. Finally, you'll see how to put your web application into production in a secure and user-friendly way. You'll go beyond traditional web hosting to explore the full range of hosting options in the cloud, and maintain a reliable server instance.
Table of Contents (7 chapters)

Creating a tile-backed OL app

In the previous section, you learned how to configure GeoServer for tile caching. In this section, you will learn how to create a tile-backed OpenLayers app using the WMTS tile scheme. First, we'll look at a WMTS example in more detail. We'll examine the CapabilitiesResponse from our GeoServer endpoint, and finally we'll walk through the frontend code. WMTS is the current best practice for tile caching in GeoServer. You can think of it as the best of WMS and TMS, providing WMS-like syntax and capabilities with the tile grid coordinate performance of TMS. As with other OGC standards, the list of parameters for WMTS is available in the implementation standard document. The tile matrix set is based on pixel size, zoom levels, scale denominators, and bounding boxes. Essentially, more tiles will need to be generated at larger scales. You...