First and second manager components that communicate to initialize and/or shut down software components in an ordered sequence
First Claim
1. An apparatus, comprising:
- a non-transitory computer readable medium encoded with readable instructions that when executed by a first computer processor implement a first manager component that executes on the first computer processor responsible for one or more first components that execute on the first computer processor within one or more first executables; and
a non-transitory computer readable medium encoded with readable instructions that when executed by a second computer processor implement a second manager component that executes on the second computer processor responsible for one or more second components that execute on the second computer processor within one or more second executables;
wherein the first and second manager components communicate by exchanging one or more initialization progress messages between the first and second manager components to initialize the one or more first components and the one or more second components in an ordered sequence based on one or more dependency relationships among two or more of the one or more first components, and the one or more second components; and
wherein the one or more first components comprise a third component, and wherein the one or more second components comprise a fourth component; and
wherein the one or more dependency relationships comprise a dependency relationship of the third component on the fourth component; and
wherein upon completion of successful initialization of the fourth component, the second manager component sends an indication of the initialization to the first manager component; and
wherein based on the dependency relationship, the first manager component waits for the indication from the second manager component before the first manager component initializes the third component, and upon receipt of the indication, the first manager component initializes the third component.
4 Assignments
0 Petitions
Accused Products
Abstract
An apparatus in one example comprises: a first manager component responsible for one or more first software components within one or more first executables of a distributed software application; and a second manager component responsible for one or more second software components within one or more second executables of the distributed software application. The first and second manager components communicate to initialize and/or shut down the one or more first software components and the one or more second software components in an ordered sequence based on one or more dependency relationships among two or more of: the one or more first software components; and/or the one or more second software components.
-
Citations
26 Claims
-
1. An apparatus, comprising:
-
a non-transitory computer readable medium encoded with readable instructions that when executed by a first computer processor implement a first manager component that executes on the first computer processor responsible for one or more first components that execute on the first computer processor within one or more first executables; and a non-transitory computer readable medium encoded with readable instructions that when executed by a second computer processor implement a second manager component that executes on the second computer processor responsible for one or more second components that execute on the second computer processor within one or more second executables; wherein the first and second manager components communicate by exchanging one or more initialization progress messages between the first and second manager components to initialize the one or more first components and the one or more second components in an ordered sequence based on one or more dependency relationships among two or more of the one or more first components, and the one or more second components; and wherein the one or more first components comprise a third component, and wherein the one or more second components comprise a fourth component; and wherein the one or more dependency relationships comprise a dependency relationship of the third component on the fourth component; and wherein upon completion of successful initialization of the fourth component, the second manager component sends an indication of the initialization to the first manager component; and wherein based on the dependency relationship, the first manager component waits for the indication from the second manager component before the first manager component initializes the third component, and upon receipt of the indication, the first manager component initializes the third component. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method, comprising the steps of:
-
performing, by a first manager component that executes on a first computer processor, one or more management operations on a first software component within a first executable of a distributed software application; performing, by a second manager component that executes on a second computer processor, one or more management operations on a second software component within a second executable of the distributed software application, wherein the first software component comprises a dependency relationship on the second software component; exchanging one or more initialization progress messages between the first and second manager components to cause the second manager component to initialize the second software component before the first manager component initializes the first software component based on the dependency relationship; sending, upon initialization of the second software component by the second manager component, an initialization progress message of the one or more initialization progress messages to indicate to the first manager component that the second software component has been initialized; and waiting for the initialization progress message from the second manager component that indicates that the second software component has been initialized before the first manager component initializes the first software component; wherein the first manager component performs one or more management operations on a third software component within the first executable; and wherein the second manager component performs one or more management operations on a fourth software component within the second executable; and wherein the third software component comprises a dependency relationship on the fourth software component; and wherein upon completion of successful initialization of the fourth software component, the second manager component sends an indication of the initialization to the first manager component; and wherein based on the dependency relationship on the fourth software component, the first manager component waits for the indication from the second manager component before the first manager component initializes the third software component, and upon receipt of the indication, the first manager component initializes the third software component. - View Dependent Claims (14)
-
-
15. An apparatus, comprising:
-
a non-transitory computer readable medium encoded with readable instructions that when executed by a first computer processor implement a first manager component that executes on the first computer processor responsible for a first software component within a first executable of a distributed software application; and a non-transitory computer readable medium encoded with readable instructions that when executed by a second computer processor implement a second manager component that executes on the second computer processor responsible for a second software component within a second executable of the distributed software application; wherein the first software component comprises a dependency relationship on the second software component; and wherein based on the dependency relationship, the second manager component waits for an indication from the first manager component that the first software component has been shut down before the second manager component shuts down the second software component; and wherein to begin shutdown of the first software component, the first manager component deactivates the first software component; and wherein the first manager component sends a shutdown progress message to the second manager component to notify the second manager component that the first software component has been deactivated; and wherein upon receipt of the shutdown progress message, the second manager component deactivates the second software component to begin shutdown of the second software component; and wherein after the first and second software components have been deactivated, the first and second manager components terminate the first and second software components to complete shutdown of the first and second software components; and wherein upon termination of the first software component and any other software components of the first executable, the first manager component instructs a first executable manager to terminate the first executable; and wherein upon termination of the second software component and any other software components of the second executable, the second manager component instructs a second executable manager to terminate the second executable. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A method, comprising the steps of:
-
performing, by a non-transitory computer readable medium encoded with readable instructions that when executed by a first computer processor implement a first manager component that executes on the first computer processor responsible for a first software component within a first executable of a distributed software application, performing, by a non-transitory computer readable medium encoded with readable instructions that when executed by a second computer processor implement a second manager component that executes on the second computer processor responsible for a second software component within a second executable of the distributed software application, wherein the first software component comprises a dependency relationship on the second software component; and wherein based on the dependency relationship, the second manager component waits for an indication from the first manager component that the first software component has been shut down before the second manager component shuts down the second software component; and wherein to begin shutdown of the first software component, the first manager component deactivates the first software component; and wherein the first manager component sends a shutdown progress message to the second manager component to notify the second manager component that the first software component has been deactivated; and wherein upon receipt of the shutdown progress message, the second manager component deactivates the second software component to begin shutdown of the second software component; and wherein after the first and second software components have been deactivated, the first and second manager components terminate the first and second software components to complete shutdown of the first and second software components; and wherein upon termination of the first software component and any other software components of the first executable, the first manager component instructs a first executable manager to terminate the first executable; and wherein upon termination of the second software component and any other software components of the second executable, the second manager component instructs a second executable manager to terminate the second executable.
-
-
26. An apparatus, comprising:
-
a high availability infrastructure in communication with a distributed software application that comprises a plurality of software components within a plurality of executables; wherein the high availability infrastructure comprises a non-transitory computer readable medium encoded with readable instructions that when executed by a first computer processor implements a first manager component that executes on the first computer processor responsible for a first software component within a first executable of the distributed software application, and wherein the high availability infrastructure comprises a non-transitory computer readable medium encoded with readable instructions that when executed by a second computer processor implements a second manager component that executes on the second computer processor responsible for a second software component within a second executable of the distributed software application; wherein the first software component comprises a dependency relationship on the second software component; and wherein based on the dependency relationship, the second manager component waits for an indication from the first manager component that the first software component has been shut down before the second manager component shuts down the second software component; and wherein to begin shutdown of the first software component, the first manager component deactivates the first software component; and wherein the first manager component sends a shutdown progress message to the second manager component to notify the second manager component that the first software component has been deactivated; and wherein upon receipt of the shutdown progress message, the second manager component deactivates the second software component to begin shutdown of the second software component; and wherein after the first and second software components have been deactivated, the first and second manager components terminate the first and second software components to complete shutdown of the first and second software components; and wherein upon termination of the first software component and any other software components of the first executable, the first manager component instructs a first executable manager to terminate the first executable; and wherein upon termination of the second software component and any other software components of the second executable, the second manager component instructs a second executable manager to terminate the second executable.
-
Specification