System and method for clustering in a multitenant application server environment
First Claim
1. A system for supporting clustering in a multitenant application server environment, comprising:
- a plurality of computers, each including a microprocessor;
an application server domain provided on the plurality of computers;
a source cluster and a target cluster included in the application server domain, wherein the source cluster comprises a first subset of the plurality of computers and wherein the target cluster comprises a second subset of the plurality of computers;
a first partition that is active on a computer of the first subset of computers that comprises the source cluster, wherein the first partition includes a resource group;
a second partition that is active on a computer in the second subset of computers that comprises the target cluster, wherein the first partition and the second partition represent respective runtime subdivisions of the application server domain;
an application programming interface (API) exposed by the application server domain; and
a replication manager;
wherein the API receives a plurality of parameters, including an identifier of the resource group, an identifier of the first partition, and an identifier of the target cluster, and invokes the replication manager to migrate a session state associated with a session of the resource group; and
wherein the replication manager, upon the invocation;
queries the target cluster, based on the identifier of the target cluster, for a runtime topology of the target cluster,uses the runtime topology to determine that the computer in the second subset of computers that comprises the target cluster can be used to store the session in the target cluster, andmigrates, based on the identifier of the resource group, the session state associated with the session of the resource group to the second partition.
1 Assignment
0 Petitions
Accused Products
Abstract
In accordance with an embodiment, described herein is a system and method for supporting clustering in a multitenant application server environment. The system includes a domain with a plurality of server clusters, and a plurality of partitions, wherein each cluster is homogenously configured and targeted by one or more partitions. An application programming interface (API) can be used to initiate a resource group across-cluster migration within a partition. The API can invoke a replication manager, which queries a target cluster for a runtime topology for use in determining where to store primary session; migrates the primary session to a determined server instance in the target cluster. Additional clustering features, such as cluster messaging service, leasing service, singleton service management, session replication, clustered JNDI, and use of domain front-end load balancing, can be supported.
12 Citations
20 Claims
-
1. A system for supporting clustering in a multitenant application server environment, comprising:
-
a plurality of computers, each including a microprocessor; an application server domain provided on the plurality of computers; a source cluster and a target cluster included in the application server domain, wherein the source cluster comprises a first subset of the plurality of computers and wherein the target cluster comprises a second subset of the plurality of computers; a first partition that is active on a computer of the first subset of computers that comprises the source cluster, wherein the first partition includes a resource group; a second partition that is active on a computer in the second subset of computers that comprises the target cluster, wherein the first partition and the second partition represent respective runtime subdivisions of the application server domain; an application programming interface (API) exposed by the application server domain; and a replication manager; wherein the API receives a plurality of parameters, including an identifier of the resource group, an identifier of the first partition, and an identifier of the target cluster, and invokes the replication manager to migrate a session state associated with a session of the resource group; and wherein the replication manager, upon the invocation; queries the target cluster, based on the identifier of the target cluster, for a runtime topology of the target cluster, uses the runtime topology to determine that the computer in the second subset of computers that comprises the target cluster can be used to store the session in the target cluster, and migrates, based on the identifier of the resource group, the session state associated with the session of the resource group to the second partition. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for supporting clustering in a multitenant application server environment, comprising:
-
providing an application server domain on a plurality of computers; providing a plurality of application server clusters as part of the application server domain, wherein the plurality of application server clusters includes a source cluster and a target cluster, and wherein the source cluster comprises a first subset of the plurality of computers and wherein the target cluster comprises a second subset of the plurality of computers; providing a first partition that is active on a computer of the first subset of computers that comprises the source cluster, wherein the first partition includes a resource group; providing a second partition that is active on a computer in the second subset of computers that comprises the target cluster, wherein the first partition and the second partition represent respective runtime subdivisions of the application server domain; exposing an application programming interface (API) by the application server domain; and providing a replication manager; receiving, by the API, a plurality of parameters, including an identifier of the resource group, an identifier of the partition, and an identifier of the target cluster; invoking, by the API, the replication manager to migrate a session state associated with a session of the resource group; upon the invocation, querying the target cluster, based on the identifier of the target cluster, for a runtime topology of the target cluster; using the runtime topology to determine that the computer in the second subset of computers that comprises the target cluster can be used to store the session in the target cluster; and migrating, based on the identifier of the resource group, the session state associated with the session of the resource group to the second partition. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory computer readable storage medium, including instructions stored thereon which when read and executed by one or more computers cause the one or more computers to perform the steps comprising:
-
providing an application server domain on a plurality of computers; providing a plurality of application server clusters as part of the application server domain, wherein the plurality of application server clusters includes a source cluster and a target cluster, and wherein the source cluster comprises a first subset of the plurality of computers and wherein the target cluster comprises a second subset of the plurality of computers; providing a first partition that is active on a computer of the first subset of computers that comprises the source cluster, wherein the first partition includes a resource group; a second partition that is active on a computer in the second subset of computers that comprises the target cluster, wherein the first partition and the second partition represent respective runtime subdivisions of the application server domain; exposing an application programming interface (API) by the application server domain; and providing a replication manager; receiving, by the API, a plurality of parameters, including an identifier of the resource group, an identifier of the partition, and an identifier of the target cluster; invoking, by the API, the replication manager to migrate a session state associated with a session of the resource group; upon the invocation, querying the target cluster, based on the identifier of the target cluster, for a runtime topology of the target cluster; using the runtime topology to determine that the computer in the second subset of computers that comprises the target cluster can be used to store the session in the target cluster; and migrating, based on the identifier of the resource group, the session state associated with the session of the resource group to the second partition.
-
Specification