Method and apparatus enabling migration of clients to a specific version of a server-hosted application, where multiple software versions of the server-hosted application are installed on a network
First Claim
1. A method of migrating at least one client to a selected version of a server-hosted application on a network, where at least two different versions of the server-hosted application are available on the network, comprising the steps of:
- (a) installing the at least two different versions of the server-hosted application on the network, wherein the at least two different versions of the server-hosted application are not simply copies of a single release of the server-hosted application, but wherein each different version of the at least two different versions of the server-hosted application corresponds to a different release of the server-hosted application, each different release incorporating at least one modification relative to any other release of the server-hosted application;
(b) creating a register identifying clients having access to the server-hosted application and indicating in the register which of the at least two different versions of the server-hosted application is associated with each client having access to the server-hosted application;
(c) changing an association in the register of at least one client selected from those clients identified in the register to a different version of the at least two different versions of the server-hosted application; and
(d) directing each client attempting to access the server-hosted application to the version corresponding to one of the at least two different versions of the server-hosted application with which the client is associated in the register.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus enabling migration of clients to a specific version of a server-hosted application, where multiple software versions of the server-hosted application are installed on the network, such that clients using the application experience minimal downtime related to upgrades and revisions of the application. When a new version of the application is to be deployed, a selected small portion of the clients is directed to the new version, to verify the functionality of that version, while the remaining clients use the previous version. If problems are discovered in the new version, the upgrade is terminated without impacting all of the clients. A register retains the identity of the clients and the version of the software with which each client is associated. The direction of the selected portion of clients to the new version of the software is done in a manner that can be completely transparent to the clients.
169 Citations
48 Claims
-
1. A method of migrating at least one client to a selected version of a server-hosted application on a network, where at least two different versions of the server-hosted application are available on the network, comprising the steps of:
-
(a) installing the at least two different versions of the server-hosted application on the network, wherein the at least two different versions of the server-hosted application are not simply copies of a single release of the server-hosted application, but wherein each different version of the at least two different versions of the server-hosted application corresponds to a different release of the server-hosted application, each different release incorporating at least one modification relative to any other release of the server-hosted application; (b) creating a register identifying clients having access to the server-hosted application and indicating in the register which of the at least two different versions of the server-hosted application is associated with each client having access to the server-hosted application; (c) changing an association in the register of at least one client selected from those clients identified in the register to a different version of the at least two different versions of the server-hosted application; and (d) directing each client attempting to access the server-hosted application to the version corresponding to one of the at least two different versions of the server-hosted application with which the client is associated in the register. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A system for migrating at least a portion of a plurality of clients to a specific unique version of a server-hosted application on a network to which the plurality of clients is coupled, where at least two unique versions of the server-hosted application are available on the network, comprising:
-
(a) a computing device for each client coupled to the network; and (b) a server having a processor and a memory in communication with the processor, said memory storing machine instructions that when executed by the processor, cause the processor to; (i) install the at least two unique versions of the server-hosted application for access over the network, wherein the at least two unique versions are not simply identical copies of a single release of the server-hosted application, but each of the at least two unique versions of the server-hosted application corresponds to a different release of the server-hosted application, each different release including at least one modification relative to any other release of the server-hosted application; (ii) create a register identifying the plurality of clients having access to the server-hosted application and including an association of a specific one of the at least two unique versions of the server-hosted application with each client having access to the server-hosted application; (iii) change an association in the register of a first group of clients selected from the plurality of clients, to a different one of the at least two unique versions of the server-hosted application; and (iv) direct each client attempting to access the server-hosted application to the specific one of the at least two unique versions of the server-hosted application with which the client is associated in the register. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A method of enabling a provider of a server-hosted application accessible via a network to migrate selected clients from a first version of said server-hosted application to a second version of said server-hosted application, such that at least one of the first version of the server-hosted application and the second version of the server-hosted application remains accessible to at least some clients of the network during the migration, comprising the steps of:
-
(a) creating a register identifying each client having access to the server-hosted application, and associating each client having access to the server-hosted application with the first version of the server-hosted application, wherein the first version of the server-hosted application is already installed on the network, and wherein the first version of the server-hosted application and the second version of the server-hosted application are not simply copies of a specific release of the server-hosted application, but rather the first version of the server-hosted application and the second version of the server-hosted application are different releases of the server-hosted application, each different release of these server-hosted application including at least one modification relative to any other release of the server-hosted application; (b) making the second version of the server-hosted application available on the network; (c) selecting a first group of clients from those clients identified in the register to be migrated to the second version of the server-hosted application; (d) changing the register so that the register indicates each client included in the first group of clients is associated with and allowed to access the second version of the server-hosted application, but not the first version of the server-hosted application; (e) each time that a client attempts to access the server-hosted application, automatically identifying which one of the first version of the server-hosted application and the second version of the server-hosted application that said client is allowed to access; and (f) automatically directing said client to the one of the first version of the server-hosted application and the second version of the server-hosted application that the client is allowed to access. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. A system for enabling a provider of a server-hosted application to migrate at least some clients from a first version of the server-hosted application to a second version of the server-hosted application, such that at least one version of the server-hosted application remains accessible to at least some of the clients during the migration, comprising:
-
(a) a plurality of computing devices, each computing device comprising a different client; and (b) a server having a processor and a memory in communication with the processor, said memory storing machine instructions that when executed by the processor, cause the processor to; (i) maintain a register that identifies each client having access to the server-hosted application, for each client having access to the server-hosted application, associates the client with the first version of the server-hosted application, wherein the first version of the server-hosted application and the second version of the server-hosted application are not simply copies of a single release of the server-hosted application, but instead, the first version and the second version of the server-hosted application correspond to different releases of the server-hosted application, each different release of the server-hosted application including at least one modification relative to any other release of the server-hosted application; (ii) enable the first version of the server-hosted application and the second version of the server-hosted application to be made available to the clients at the same time; (iii) enable a first group of clients to be selected from those clients identified in the register, for migration to the second version of the server-hosted application; (iv) change the register so that the register indicates that each client included in the first group of clients is associated with and allowed to access the second version of the server-hosted application, but not the first version of the server-hosted application; (v) each time that any client attempts to access the server-hosted application, automatically identify which of the first version of the server-hosted application and the second version of the server-hosted application that said client is allowed to access; and (vi) direct said client to the one of the first version of the server-hosted application and the second version of the server-hosted application that said client is allowed to access.
-
-
47. A method of migrating at least one client to a selected version of a server-hosted application on a network, comprising the steps of:
-
(a) installing a first version of the server-hosted application and a second version of the server-hosted application on the network, the first version of the server-hosted application and the second version of the server-hosted application corresponding to different releases of the server-hosted application, each different release of the server-hosted application incorporating at least one change relative to any other release of the server-hosted application, wherein each release of the server-hosted application is configured to execute processing remote from the client, and to transmit a result to the client, wherein the server-hosted application could have been executed by the client, if the server-hosted application resided on the client instead of on the network hosting the server-hosted application, even if the client did not have access to the network; (b) creating a register identifying clients having access to the server-hosted application and indicating in the register which of the first version of the server-hosted application and the second version of the server-hosted application is associated with each client having access to the server-hosted application; (c) changing an association in the register of at least one client selected from those clients identified in the register to a different one of the first version of the server-hosted application and the second version of the server-hosted application; and (d) directing each client attempting to access the server-hosted application to the one of the first version of the server-hosted application and the second version of the server-hosted application with which the client is associated in the register.
-
-
48. A method of enabling a provider of a server-hosted application to replace a first version of said server-hosted application with a second version of said server-hosted application, comprising the steps of:
-
(a) creating a register identifying each client having access to the server-hosted application, and associating each client having access to the server-hosted application with the first version of the server-hosted application; (b) making the second version of the server-hosted application available on the network, wherein the first version of the server-hosted application and the second version of the server-hosted application correspond to different releases of the server-hosted application, each different release of the server-hosted application incorporating at least one change relative to any other release of the server-hosted application; (c) selecting a first group of clients from those clients identified in the register to be migrated to the second version of the server-hosted application; (d) changing the register so that the register indicates each client included in the first group of clients is associated with and allowed to access the second version of the server-hosted application, but not the first version of the server-hosted application; (e) each time that a client attempts to access the server-hosted application, automatically identifying the version of the server-hosted application that said client is allowed to access; (f) automatically directing said client to the version of the server-hosted application that the client is allowed to access; and (g) once all of the clients of the server-hosted application have been migrated to the second version of the server-hosted application, removing the first version of the server-hosted application from the network, thereby replacing the first version of the server-hosted application with the second version of the server-hosted application.
-
Specification