MapGuide Manual:Administrator:MapGuide Architecture
From MapGuide Manual
« | MG Manual Contents MapGuide Architecture | » |
Administrator introduction | Feature Data Objects |
Contents |
The architecture of MapGuide may be viewed in terms of different environments. Two main environments make up the architecture of MapGuide:
Web Environment
When a client browser requests a MapGuide Web page through a URL, there are two servers ready to respond. The first is the Web Server-- responsible for handling requests for web pages.
When the request is for a file with an extension representing a program language, such as PHP, ASPX, or JSP, the Web Server passes off the request to the appropriate server-side interpreter for that language. This interpreter is responsible for executing each line in the file as a program instruction. A typical server-side task would be retrieving data from a database and generating HTML around the data.
In the MapGuide environment, a second server (or set of servers, in a distributed processing environment) is available and responsible for seven services:
|
Not all of these services are required for every application-- but they can all be configured, if required.
Here, we'll assume our MapGuide server is responsible for providing two services: mapping service and feature service. When a PHP, ASPX, or JSP server-side interpreter reads an instruction for a mapping operation, it contacts the MapGuide server, and then formats the results that the MapGuide server returns according to the instructions programmed in the interpreted file.
The server-side interpreter sends the HTML that it generates back to the web server, which sends it back to the client browser. The browser displays the result(s), which might be an updated map zoomed in on the coordinates selected (a example of a Mapping Service operation), and a table of metadata for a feature near the same coordinates (this is a Feature Service).
The following diagram illustrates this process.
Ajax and DWF Environment
The two different types of viewers available for MapGuide are compared in the following table:
Ajax Viewer | DWF Viewer |
---|---|
No Download | ActiveX control download |
Available for most operating systems | Windows only |
Available for most browsers | Internet Explorer only |
Raster based | Vector based |
Ajax is an acronym for Asynchronous JavaScript with XML. However, what Ajax really means is that the browser can send a request to another process, such as another Web page, without having to refresh itself and lose its current state. In MapGuide this allows dynamic map viewing within a web browser-- the user of the client browser sees a map displayed within a frame nested inside other frames. Various tools can be used to alter (and refresh) the view seen within the map frame but the settings displayed in the outer frames does not change.
DWF (Design Web Format) is the Autodesk plug-in that does much the same thing as Ajax. Autodesk added the Ajax environment because many users did not want to install the DWF plug-in. Ajax is native to the browser, so all users can view a MapGuide Ajax page without a special plug-in.
MapGuide uses Ajax extensively. When the user uses a map tool, such as zooming or panning the map, JavaScript in the map initiates an Ajax call that returns a new map image to the browser. That Ajax call is also to the MapGuide server, bypassing the server-side interpreter.
The following diagram illustrates this process.
"DWF" and "Design Web Format" are both trademarks of Autodesk |
« | MG Manual Contents MapGuide Architecture | » |
Administrator introduction | Feature Data Objects |