Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1999320.1999377acmotherconferencesArticle/Chapter ViewAbstractPublication Pagescom-geoConference Proceedingsconference-collections
research-article

Performance vs. productivity in the context of ArcGIS server 10

Published: 23 May 2011 Publication History

Abstract

While many programming languages excel in their ability to execute commands quickly, others embody a greater focus on programmer productivity and clear syntax. In ESRI's GIS software package ArcGIS, Python is now the choice language for many GIS Analysts as an alternative to the more complex ArcObjects library. ArcObjects is written in C#, Visual Basic, Java, or C++, all more difficult languages to learn than Python, but also much faster. In modern web mapping, ArcGIS Python scripts are now making their way onto the server, sometimes at the expense of application performance and stability.
I have explored the idea of code performance vs. programmer productivity in the context of ArcGIS Server by writing several web-based geoprocessing services in both Python and C# ArcObjects. The goal was to identify the classes of tools which are best developed using one technology or the other, either based on performance or ease of development. From the outset, I made the assumption that under equal circumstances, it is easier to develop a service in Python, but that C# will always execute faster.
The different geoprocessing services were divided into three categories: raster-based, vector-based, and server utilities. The services had different inputs and outputs ranging from text to polygons to zip files. Multi-Mechanize web performance and load testing framework was used to automate requests and make testing repeatable. Multi-Mechanize is an open source testing framework written in python which assisted in replaying requests, logging responses, and compiling statistics. Using this framework, I was able to make an assessment of the exact types of geoprocessing services which should be built using python, and which should be avoided.

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
COM.Geo '11: Proceedings of the 2nd International Conference on Computing for Geospatial Research & Applications
May 2011
292 pages
ISBN:9781450306812
DOI:10.1145/1999320

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 May 2011

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Conference

COM.Geo '11

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 0
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 04 Oct 2024

Other Metrics

Citations

View Options

Get Access

Login options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media