Transaction sticky load balance policies
First Claim
1. A method comprising:
- executing, by a processing device of an application server, a transaction service, the application server being one of a plurality of application servers in an application server cluster, the plurality of application servers in the application server cluster executing the transaction service concurrently;
identifying, by the processing device, a policy for selecting one of the plurality of application servers in the application server cluster as a single application server for a transaction comprising a plurality of transaction-related operations, wherein the policy directs all of a plurality of invocations corresponding to the plurality of transaction-related operations of the transaction to the single application server to protect data integrity of the transaction;
receiving component configuration information indicating one or more components of the transaction service to be configured with the policy;
generating, by the processing device, a proxy in view of the policy and the component configuration information; and
providing, by the processing device, the proxy to a remote client, the proxy containing the policy directing the proxy to send all of the plurality of invocations of the plurality of transaction-related operations of the transaction to the single application server.
1 Assignment
0 Petitions
Accused Products
Abstract
A transaction sticky load balance policy allows a remote client to choose a target server node from a server cluster to provide a transaction service. The load balance policy directs invocations of business methods within a transaction to the same target server node. The remote client receives the load balance policy from a proxy, which is downloaded to the remote client from one of the server nodes in the server cluster. The remote client selects a target server node according to the load balance policy. The remote client then invokes the business methods within a transaction on the target server node via the proxy. The target server node can execute all of the business methods within the transaction on a Java virtual machine. The business methods can be implemented with Enterprise JavaBeans (EJBs).
-
Citations
20 Claims
-
1. A method comprising:
-
executing, by a processing device of an application server, a transaction service, the application server being one of a plurality of application servers in an application server cluster, the plurality of application servers in the application server cluster executing the transaction service concurrently; identifying, by the processing device, a policy for selecting one of the plurality of application servers in the application server cluster as a single application server for a transaction comprising a plurality of transaction-related operations, wherein the policy directs all of a plurality of invocations corresponding to the plurality of transaction-related operations of the transaction to the single application server to protect data integrity of the transaction; receiving component configuration information indicating one or more components of the transaction service to be configured with the policy; generating, by the processing device, a proxy in view of the policy and the component configuration information; and providing, by the processing device, the proxy to a remote client, the proxy containing the policy directing the proxy to send all of the plurality of invocations of the plurality of transaction-related operations of the transaction to the single application server. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
receiving, by a processing device of a remote client, a request to perform a plurality of transaction-related operations of a transaction, wherein the plurality of transaction-related operations correspond to a plurality of invocations to invoke the plurality of transaction-related operations, and are undoable in response to failure of one of the plurality of transaction-related operations; selecting, by the processing device, in view of a policy stored on the remote client, a single application server from a plurality of application servers in an application server cluster according to the policy, wherein the plurality of application servers in the application server cluster execute a transaction service concurrently to perform the plurality of transaction-related operations, and wherein the policy directs all of the plurality of invocations of the plurality of transaction-related operations of the transaction to the single application server; directing, by the processing device, a first invocation of the plurality of invocations of the plurality of transaction-related operations within the transaction to the single application server to cause a corresponding first transaction-related operation of the plurality of the transaction-related operations within the transaction to be executed by a Java virtual machine on the single application server; identifying a second transaction-related operation of the plurality of the transaction-related operations to be performed for the transaction; determining, by the processing device, from the policy to direct a second invocation of the plurality of invocations to the single application server to cause the second transaction-related operation to be executed by the single application server to protect data integrity of the transaction; and directing the second invocation of the plurality of invocations to the single application server. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A system comprising:
-
memory; and a processing device of an application server being one of a plurality of application servers in an application server cluster, the processing device, operatively coupled to the memory, to; execute a transaction service, the plurality of application servers the application server cluster to execute the transaction service concurrently; and identify a policy for selecting one of the plurality of application servers in the application server cluster as a sing application server for a transaction comprising a plurality of transaction-related operations, wherein the policy directs all of a plurality of invocations corresponding to the plurality of transaction-related operations of the transaction to the single application server to protect data integrity of the transaction; receive component configuration information indicating one or more components of the transaction service to be configured with the policy; generate a proxy in view of the policy and the component configuration information; and provide the proxy to a remote client, the proxy containing the policy directing the proxy to send all of the plurality of invocations of the plurality of transaction-related operations of the transaction to the single application server. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A non-transitory computer readable storage medium including instructions that, when executed by a processing device of an application server being one of a plurality of application servers in an application server cluster, cause the processing device to:
-
execute, by the processing device, a transaction service, the plurality of application servers in the application server cluster to execute the transaction service concurrently; identify, by the processing device, a policy for selecting one of the plurality of application servers in the application server cluster as a single application server for a transaction comprising a plurality of transaction-related operations, wherein the policy directs all of a plurality of invocations corresponding to the plurality of transaction-related operations of the transaction to the single application server to protect data integrity of the transaction; receive component configuration information indicating one or more components of the transaction service to be configured with the policy; generate, by the processing device, a proxy in view of the policy and the component configuration information; and provide the proxy to a remote client, the proxy containing the policy directing the proxy to send all of the plurality of invocations of the plurality of transaction-related operations of the transaction to the single application server. - View Dependent Claims (18, 19, 20)
-
Specification