Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Web History | Sign in

Patents

A method for load balancing in a server cluster that includes configuring a load management application to use a load balancing decision function selected from a plurality of load balancing decision functions, receiving a request in the server cluster, selecting a request handler from a plurality of request handlers by the load management application using the load balancing decision function, and transmitting the request to the request handler, wherein the plurality of load balancing decision functions that includes a default load balancing decision function and a custom load balancing decision function.

Claims

1. A method for load balancing in a server cluster comprising:

configuring a load management application to use a load balancing decision function selected from a plurality of load balancing decision functions;

receiving a request in the server cluster;

selecting a request handler from a plurality of request handlers by the load management application using the load balancing decision function; and

transmitting the request to the request handler,
wherein the plurality of load balancing decision functions comprises a default load balancing decision function and a custom load balancing decision function.

2. The method of claim 1, wherein the default load balancing function is comprised in the load management application and the custom load balancing decision function comprises a plug-in function to the load management application, and wherein the plug-in function is provided separately from the load management application.

3. The method of claim 1, wherein the plurality of load balancing decision functions further comprises a weighted round robin load balancing decision function configurable based on a plurality of weights corresponding to the plurality of request handlers.

4. The method of claim 1, wherein the request comprises a request attribute, wherein the request attribute is used by the custom load balancing decision function to select the request handler.

5. The method of claim 4, wherein the request attribute is used by the custom load balancing decision function to determine whether the request requires a request handler satisfying at least one selected from a group consisting of a throughput requirement, a memory requirement, a security capabilities requirement, a schedule requirement, a location requirement, and a reliability requirement.

6. The method of claim 1, further comprising:

configuring the server cluster to use a custom dynamic clustering function, wherein the custom dynamic clustering function is called when a change occurs in the plurality of request handlers.

7. The method of claim 6, further comprising:

reconfiguring the load balancing decision function based on the custom dynamic clustering function.

8. The method of claim 1, wherein configuring the load management application is performed based on a value of a load balancing policy indicator.

9. A server cluster comprising:

a plurality of servers configured to execute a plurality of request handlers for receiving requests; and

a load management application configured to use a load balancing decision function selected from a plurality of load balancing decision functions to select a request handler, wherein the load management application:

selects a request handler from a plurality of request handlers using the load balancing decision function when the server cluster receives a request; and

transmits the request to the request handler,
wherein the plurality of load balancing decision functions comprises a default load balancing decision function and a custom load balancing decision function.

10. The server cluster of claim 9, wherein the default load balancing function is comprised in the load management application and the custom load balancing decision function comprises a plug-in function to the load management application, and wherein the plug-in function is provided separately from the load management application.

11. The server cluster of claim 9, wherein the plurality of load balancing decision functions further comprises a weighted round robin load balancing decision function configurable based on a plurality of weights corresponding to the plurality of request handlers.

12. The server cluster of claim 9, wherein the request comprises a request attribute, wherein the request attribute is used by the custom load balancing decision function to select the request handler.

13. The server cluster of claim 12, wherein the request attribute is used by the custom load balancing decision function to determine whether the request requires a request handler satisfying at least one selected from a group consisting of a throughput requirement, a memory requirement, a security capabilities requirement, a schedule requirement, a location requirement, and a reliability requirement.

14. The server cluster of claim 9, wherein the load management application further:

calls a custom dynamic clustering function when a change occurs in the plurality of request handlers.

15. The server cluster of claim 9, wherein the custom load balancing decision function returns a uniform resource locator of the request handler.

16. The server cluster of claim 9, wherein configuring the load management application to use the custom load balancing decision function is performed based on a value of a load balancing policy indicator.

17. A computer usable medium comprising computer readable program code embodied therein for causing a computer system to load balance in a server cluster by:

configuring a load management application to use a load balancing decision function selected from a plurality of load balancing decision functions;

receiving a request in the server cluster;

selecting a request handler from a plurality of request handlers by the load management application using the load balancing decision function; and

transmitting the request to the request handler,
wherein the plurality of load balancing decision functions comprises a default load balancing decision function and a custom load balancing decision function.

18. The computer usable medium of claim 17, wherein the default load balancing function is comprised in the load management application and the custom load balancing decision function comprises a plug-in function to the load management application, and wherein the plug-in function is provided separately from the load management application.

19. The computer usable medium of claim 18, wherein configuring the load management application to use the custom load balancing decision function is performed based on a value of a load balancing policy indicator.

20. The computer usable medium of claim 17, further comprising:

configuring the server cluster to use a custom dynamic clustering function, wherein the custom dynamic clustering function is called when a change occurs in the plurality of request handlers.