Browse Prior Art Database

Controlled application update and backout without end-user interruption

IP.com Disclosure Number: IPCOM000239706D
Publication Date: 2014-Nov-26
Document File: 1 page(s) / 19K

Publishing Venue

The IP.com Prior Art Database

Abstract

Customers must continually bring new application versions into production to fix bugs or provide new end-user capability. This is most usually done at a time of low traffic e.g. the weekend. However, some critical updates must be made outside these regular service windows and with increasing global and 24x7 access through mobile devices finding a period of low traffic can be difficult. With application change comes risk. Extensive testing shakes out more bugs but delays rollout and some problems only emerge with real users. In a new online transaction server a new AVAILABLE | UNAVAILABLE application state has been introduced. An UNAVAILABLE application is installed and validated (ENABLED) but cannot be accessed by end-users or other applications. Making the application AVAILABLE "opens the door" to end user requests and calls from other applications. If another version of the application is already AVAILABLE it will be superseded by the new version. The changed is controlled and near is instantaneous across a large deployment. There is no limit to the scale of the changes. If a problem is encountered making the newer version UNAVAILABLE the older version will immediately be the target of future calls while existing requests complete normally. At all times diagnostic information such as messages, trace and monitoring information reflects the application version being executed.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 100% of the total text.

Page 01 of 1

Controlled application update and backout without end-user interruption

When an application is ENABLED its entry points are reserved i.e. cannot be used by another application but are not made public so are not visible to end users or other application programs. When a new version of an application is made AVAILABLE its entry points are made public displacing those of older versions. New requests and calls immediately target the new version. Making the newer version UNAVAILABLE immediately reverses the process but because the application is still ENABLED running tasks are able to complete normally.

    Through a new API customers are able to write a wrapper program that can direct a subset of users to a new application version hosted on the same platform as an older one thereby ensuring only those that want an upgrade get it and any problems affect a subset of all users.

    The implementation ensures that the PROGRAM entry points of the highest application version are public so existing programs will work unchanged always targeting the highest AVAILABLE version.

    The new API targets an application entry point by operation name as well as application version so is able to target older application versions. This enables a router program to direct users to an appropriate application version when multiple are installed and AVAILABLE. The implementation also hides micro version changes allowing service administrators to install bug fixes without requiring changes to a router...