Mechanism for reconfiguring a server without incurring server down time
First Claim
1. A method for reconfiguring a server executing on a computer, comprising:
- receiving, at runtime, a reconfiguration request to reconfigure said server, wherein said server has a current configuration which is defined by a first set of configuration data structures, and wherein said current configuration dictates the manner in which said server processes client requests;
constructing a second set of configuration data structures which is different from said first set of configuration data structures, said second set of configuration data structures defining a new configuration for said server; and
without shutting down and restarting said server, causing said server to reference said second set of configuration data structures instead of said first set of configuration data structures when processing selected client requests, thereby reconfiguring said server from said current configuration to said new configuration such that said new configuration dictates the manner in which said server processes selected client requests;
wherein said first set of data structures may be accessed and used by said server in processing a client request even after said server has been reconfigured from said current configuration to said new configuration.
4 Assignments
0 Petitions
Accused Products
Abstract
A mechanism for reconfiguring a server without incurring any server down time is disclosed. At startup time, a server constructs a set of configuration data structures based upon a set of configuration information, and stores the data structures into a portion of the server'"'"'s memory space. The server also updates a current configuration pointer to point to the configuration data structures to establish the data structures as the server'"'"'s current configuration. Then, during normal operation, the server receives a reconfiguration signal. In response to this signal, the server constructs a new set of configuration data structures based upon a modified set of configuration information, and stores the new data structures into another portion of the server'"'"'s memory space. Then, the server updates the current configuration pointer to point to the new configuration data structures to establish the new configuration data structures as the current server configuration. By doing so, the server changes its configuration. This change is implemented without shutting down and restarting the server.
42 Citations
40 Claims
-
1. A method for reconfiguring a server executing on a computer, comprising:
-
receiving, at runtime, a reconfiguration request to reconfigure said server, wherein said server has a current configuration which is defined by a first set of configuration data structures, and wherein said current configuration dictates the manner in which said server processes client requests; constructing a second set of configuration data structures which is different from said first set of configuration data structures, said second set of configuration data structures defining a new configuration for said server; and without shutting down and restarting said server, causing said server to reference said second set of configuration data structures instead of said first set of configuration data structures when processing selected client requests, thereby reconfiguring said server from said current configuration to said new configuration such that said new configuration dictates the manner in which said server processes selected client requests; wherein said first set of data structures may be accessed and used by said server in processing a client request even after said server has been reconfigured from said current configuration to said new configuration. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer readable storage medium, comprising:
-
instructions for causing one or more processors to receive, at runtime, a reconfiguration request to reconfigure a server, wherein said server has a current configuration which is defined by a first set of configuration data structures, and wherein said current configuration dictates the manner in which said server processes client requests; instructions for causing one or more processors to construct a second set of configuration data structures which is different from said first set of configuration data structures, said second set of configuration data structures defining a new configuration for said server; and instructions for causing one or more processors to cause, without shutting down and restarting said server, said server to reference said second set of configuration data structures instead of said first set of configuration data structures when processing selected client requests, thereby reconfiguring said server from said current configuration to said new configuration such that said new configuration dictates the manner in which said server processes selected client requests; wherein said first set of data structures may be accessed and used by said server in processing a client request even after said server has been reconfigured from said current configuration to said new configuration. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method performed by a server executing on a computer, the method comprising:
-
transitioning from a former configuration defined by a first set of configuration data structures to a current configuration defined by a second set of configuration data structures; after transitioning to said current configuration; processing a first request associated with said former configuration by accessing and using said first set of configuration data structures; and processing a second request associated with said current configuration by accessing and using said second set of configuration data structures. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A computer readable storage medium comprising:
-
instructions for causing one or more processors to transition a server from a former configuration defined by a first set of configuration data structures to a current configuration defined by a second set of configuration data structures; instructions for causing one or more processors to process, after transitioning to said current configuration, a first request associated with said former configuration by accessing and using said first set of configuration data structures; and instructions for causing one or more processors to process, after transitioning to said current configuration, a second request associated with said current configuration by accessing and using said second set of configuration data structures. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40)
-
Specification