wiki:MapGuideRfc66

Version 1 (modified by CXYS, 16 years ago) ( diff )

--

MapGuide RFC 66 - Failover

This page contains an change request (RFC) for the MapGuide Open Source project. More MapGuide RFCs can be found on the RFCs page.

Status

RFC Template Version(1.0)
Submission Date(June 16, 2009)
Last Modified(Christine Bao Tue Jun 16 02:22:17 2009)
Author(Christine Bao)
RFC Status(draft)
Implementation Status(under development)
Proposed Milestone(2.2)
Assigned PSC guide(s)(Tom Fukushima)
Voting History(vote date)
+1Bob, Andy, Haris
+0Paul
-0Tom, Bruce
-1Jason (troublemaker)
no vote

Overview

Failover is to improve user feedback to monitor state between client and server tier, while detect and report cases of failure in both Ajax and Fusion web layout.

Motivation

Customer reports that if leave the browser open for some while without any operation, the session will timeout and can’t get informed. If server is down the error message is not easy to read and user can’t figure out what happens. The use cases would be:

  1. If the Http session is timeout, the user should be informed about the fact instead of getting some script errors or meaningless error messages.
  2. If the MapGuide Server session is timeout, the user should be informed about the fact instead of getting some script errors or some meaningless error messages.
  3. If the connection to MapGuide Server is broken, the user should be informed by a friendly message which helps the user know what's happening instead of getting a kind of "exception stack trace" message box.

Proposed Solution

The possible solutions could be:

  1. Implement a script which pings the servers periodically to keep the both sessions alive (from browser to web extension and from web extension to server).
  2. Refine the code handling the "connection broken" exception to provide more friendly messages.

Implications

  1. Keep alive
  2. Ajax viewer pings server periodically by calling “GetFeatureProviders” (the most lightweight function).
  3. Fusion viewer pings server periodically by calling Common.php which will refresh connection.
  4. Refine “connection broken” exception handling

Catch the exception and show a readable message.

Test Plan

Test both Ajax viewer and Fusion viewer.

Funding/Resources

Supplied by Autodesk.

Note: See TracWiki for help on using the wiki.