14 Typical architecture of Web map applications

A typical Web map portal is described by Figure 14.1. On the server side there is a Web server, Web map server, database, and files. Most often, all of these components are located on one computer, but they can also be distributed across several computers.

Architecture of a Web map portal. Source: https://www.e-education.psu.edu/geog585/node/684 ,Credit: Icons by RRZEicons (Own work), via Wikimedia Commons.

Figure 14.1: Architecture of a Web map portal. Source: https://www.e-education.psu.edu/geog585/node/684 ,Credit: Icons by RRZEicons (Own work), via Wikimedia Commons.

A Web server represents a computer on which the appropriate software is installed with query interpretation capabilities sent via HTTP (but also HTTPS, FTP, FTPS, SMTP, etc.). Network clients can request different resources from the server. Via HTTP, the server responds to the Web page, image, file, data, and different service queries. When the client (Web browser) requests access to a site, the Web server responds to that request. The server processes the request, interprets it, and returns a reply which the Web browser displays to the user. It is possible to send requests for different types of resources (files) via HTTP, not just HTML page requests. Since access to every computer is determined by ports (inputs), represented by numbers, therefore, the access to a Web server is defined by a port. Typically, the port for accessing a Web server is 80. Every server has an IP address so that when a page is visited, e.g., the page http://osgl.grf.bg.ac.rs, practically, based on the give name, the Web browser redirects to a unique IP, in this case 147.91.22.148:80, where the number 80 which indicates a Web server can be omitted. Apache is the most-used Web server on the Internet with nginx also being very popular.

Web map server represent a specialized software application comprising part of the Web server model and having an implemented functionality to receive and respond to requests for geoinformation. A Web map server uses different protocols. Typically, these are Web Map Service (WMS), Web Feature Service (WFS), and other open or industrial standards. These protocols are developed specifically for the exchange of geoinformation, whether they are vector data, geospatial attributes, raster maps, or others. The most famous Web map server are

Web map clients represent libraries (typically in JavaScript) which enable visualization, manipulation, and analysis of geospatial data relying on Web standards. Additionally, clients can also be standard GIS applications with previously mentioned functionalities, e.g., QGIS.

On the client side, there is the Web map display component (Mapping Widget) embedded in the Web page (geoportal) and it processes and displays data in the form of a map. Also, the client must secure the possibility of creating a query for data on the server and the possibility of receiving query responses from the server side and displaying them in a Web browser.

Communication of the client, application, and server layer is executed via a network, e.g., the Web, and the system has a distributed architecture with physically separated components, while the entire system behaves as one functional unit.

Maps servers are accessed by standard Web map protocols (WMS, WFS,…) sending a query via HTTP. The client can be a direct data user or another cartographic service which processes queries sent by another client. The format for data exchange in the network is XML. Typical Web client applications are OpenLayers, Leafleat, Cesiumjs, and others.