Client-side versus Server-side Geoprocessing: Benchmarking the Performance of Web Browsers Processing Geospatial Data Using Common GIS Operations - Hamilton, Erin L (My University, 2014)
Web-based GIS and mapping applications are traditionally based on a client-server model, where most of the data processing work is placed on the server, but current trends in web applications are moving towards more interactivity and processing tasks on the client. This study examines what happens when that processing load is shifted to the client using JavaScript to process geospatial data directly in the browser. The time needed to complete common GIS tasks using the JavaScript library JSTS Topology Suite were benchmarked in popular web browsers including Chrome, Firefox, Internet Explorer, Opera, and Safari. The GIS operations buffer, union, and Voronoi diagram were tested with a suite of points, lines, and polygons ranging in size from 10 up to 100,000 vertices. The testing platforms included Windows, Mac, and Linux desktops and laptops. The same geoprocessing tests were conducted on a cloud-based Linux server using the Java library JTS Topology Suite as a performance comparison of server-side processing. The various testing configurations were then analyzed to see how browsers compare to the performance of traditional client-server applications. The results indicated that the server was faster than the client in all testing scenarios, and only when processing generalized small scale data, was the client performance in an acceptable time range. These results demonstrated that the current implementation of web browsers are limited in their ability to execute JavaScript geoprocessing and not yet prepared to process data sizes larger than about 7,000 to 10,000 vertices before either prompting an unresponsive script warning in the browser or potentially losing the interest of the user.
Includes table of contents, charts, tables, bibliography
Keywords: Server; Client; Geospatial data; GIS; Web browser; Geoprocessing