Overview, Terminology, Overview terminology – Pitney Bowes MapXtreme User Manual

Page 103

Advertising
background image

Chapter 6: Understanding State Management

Overview

MapXtreme v7.1

103

Developer Guide

Overview

State management is a key consideration in the design and implementation of a MapXtreme web
application. How the changes a web site visitor makes when interacting with your web application is
central to a successful user experience and to building a scalable, high performing application.

Before getting too far into this subject, the following section is a "must read" for what follows in this
chapter. Understanding the difference between MapXtreme Session and HTTP Session, user state
and application state, clean and dirty MapXtreme Session objects, and more, will better prepare you
for planning and building your web application successfully right from the beginning.

Terminology

MapXtreme Session - The MapInfo.Engine.Session object that holds the Catalog, MapFactory, and
CoordSysFactory. The user interacts with an instance of a MapXtreme Session object.

HTTP Session - The System.Web.HttpSessionState object where the user's changes are saved
between requests. These changes are saved and restored for each request. The user's changes are
known as the user state.

Browser Session -The period of time a unique user interacts with the web application. This is also
referred to as the ASP.NET Session.

InProc Development model - A web application development model in which each user has his
own instance of the MapXtreme Session object. Any changes the user makes during the browser
session do not affect other users. The entire MapXtreme web application is stored in memory with
the current application state and is associated with this individual user. This model is useful for
small, light-use web applications where the number of users is known, such as a department’s
intranet. Contrast this with the more scalable Pooled Development model in which users share the
MapXtreme Session and system resources. See

InProc Development Model on page 112

.

Pooled Development model - A model in which multiple MapXtreme Session instances are
available from a COM+ pool associated with the web application and are activated to serve web
requests. Each of the pooled MapXtreme Session objects is used to handle requests from multiple
web users. This model is more complicated than the InProc model, since your application must
manage the state of the MapXtreme Session for each user. However, this is a more efficient use of
system resources. Use this model to build scalable applications. See

State Management For

Pooled Objects on page 115

.

State Management - A general term in web application development that deals with saving and
restoring information from a browser session.

Background map - The initial map(s) that is pre-loaded with the web application as defined in the
Web.config file. This map contains reference layers, such as street networks and postal boundaries,
as well as application-specific data such as store locations or cell towers. This base workspace will
be pre-loaded in MapXtreme Session instances and will be available unless the application allows
the user to change the base maps. See

What Should the Initial Map Look Like? on page 111

.

Advertising