Virtual machine monitoring using shared memory
First Claim
Patent Images
1. A computer-implemented method, comprising:
- implementing at a server node in a network of nodes an application server instance having a virtual machine control unit;
launching with the virtual machine control unit at least two worker nodes within the application server instance, each of the at least two worker nodes providing a respective run-time environment;
in each of the respective run-time environments of the at least two worker nodes,executing a respective virtual machine (“
VM”
) and a respective virtual machine monitor for the respective VM, andrunning by the respective VM a respective application , including storing a local object within a respective heap internal to and maintained by the VM;
one of the virtual machines (“
VMs”
) instantiating a data object in a shared heap of the application server instance external to the at least two worker nodes and accessible by the VMs of the at least two worker nodes; and
publishing status data to a monitoring memory of the application server instance external to and shared by the at least two worker nodes and the shared heap, wherein the monitoring memory is accessible to a monitoring console configured to display the published status data, the published status data includingdata specifying a utilization of the shared heap, andfor each of the plurality of worker nodes,data specifying a utilization of the internal heap of the respective VM, anddata specifying a history of garbage collecting events of the internal heap of the respective VM.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method to monitor a virtual machine VM. The VM executes one or more applications. During executing of the one or more applications, local objects are created and stored within an internal heap maintained by the VM. Status data of the internal heap is published to monitoring memory external to the VM.
-
Citations
16 Claims
-
1. A computer-implemented method, comprising:
-
implementing at a server node in a network of nodes an application server instance having a virtual machine control unit; launching with the virtual machine control unit at least two worker nodes within the application server instance, each of the at least two worker nodes providing a respective run-time environment; in each of the respective run-time environments of the at least two worker nodes, executing a respective virtual machine (“
VM”
) and a respective virtual machine monitor for the respective VM, andrunning by the respective VM a respective application , including storing a local object within a respective heap internal to and maintained by the VM; one of the virtual machines (“
VMs”
) instantiating a data object in a shared heap of the application server instance external to the at least two worker nodes and accessible by the VMs of the at least two worker nodes; andpublishing status data to a monitoring memory of the application server instance external to and shared by the at least two worker nodes and the shared heap, wherein the monitoring memory is accessible to a monitoring console configured to display the published status data, the published status data including data specifying a utilization of the shared heap, and for each of the plurality of worker nodes, data specifying a utilization of the internal heap of the respective VM, and data specifying a history of garbage collecting events of the internal heap of the respective VM. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-readable storage medium having stored thereon instructions that, if executed by a machine, will cause the machine to perform operations comprising:
-
implementing at a server node in a network of nodes an application server instance having a virtual machine control unit; launching with the virtual machine control unit at least two worker nodes within the application server instance, each of the at least two worker nodes providing a respective run-time environment; in each of the respective run-time environments of the at least two worker nodes, executing a respective java virtual machine (“
JVM”
) and a respective virtual machine monitor for the respective JVM, andrunning by the respective JVM a respective application , including storing local objects within a corresponding internal heap internal to and maintained by the corresponding JVM; one of the java virtual machines (“
JVMs”
) instantiating a data object in a shared heap of the application server instance external to the at least two worker nodes and accessible by the JVMs of the at least two worker nodes; andpublishing status data to a monitoring memory of the application server instance external to and shared by the at least two worker nodes and the shared heap, wherein the monitoring memory is accessible to a monitoring console configured to display the published status data, the published status data including data specifying a utilization of the shared heap, and for each of the plurality of worker nodes, data specifying a utilization of the internal heap of the respective JVM, and data specifying a history of garbage collecting events of the internal heap of the respective JVM. - View Dependent Claims (10, 11, 12)
-
-
13. A system, comprising:
a server node to execute an application server (“
AS”
) instance, the AS instance including logic executable by a processor of the server node to;launch with a virtual machine control unit at least two worker nodes within the AS instance, each of the at least two worker nodes providing a run-time environment; in each of the respective run-time enviromnents of the at least two worker nodes, execute a respective java virtual machine (“
JVM”
) and a respective virtual machine monitor for the respective JVM, andrun by the respective JVM a respective application, including storing local objects within a corresponding internal heap internal to and maintained by the corresponding JVM; instantiate with one of the java virtual machines (“
JVMs”
) a data object in a shared heap of the AS instance external to the at least two worker nodes and accessible by the JVMs of the at least two worker nodes; andpublish status data to a monitoring memory of the application server instance external to and shared by the at least two worker nodes and the shared heap, wherein the monitoring memory is accessible to a monitoring console configured to display the published status data, the published status data including data specifying a utilization of the shared heap, and for each of the plurality of worker nodes, data specifying a utilization of the internal heap of the respective JVM, and data specifying a history of garbage collecting events of the internal heap of the respective JVM. - View Dependent Claims (14, 15, 16)
Specification