Connection pool use of runtime load balancing service performance advisories
First Claim
1. A computer-implemented method for routing work requests to a computing system that comprises a plurality of computing nodes that each hosts a server instance that provides a service that performs work, the method comprising:
- receiving a request for a connection to said computing system for requesting said service;
identifying a pool of connections that is associated with said service, wherein each connection in said pool is a connection to, and recognized by, a particular server instance;
wherein a first connection associated with said service is a connection to and recognized by a first server instance and a second connection associated with said service is a connection to and recognized by a second server instance, wherein the first connection is not the same as the second connection, and the first server instance is not the same as the second server instance;
wherein said each connection is one of a plurality of connections that simultaneously existed in said pool prior to receiving said request for a connection; and
selecting, from said pool, a connection that is associated with said service, to route a request for performance of work associated with said service;
wherein said selecting is based on substantially current performance information about server instances that offer said service that is associated with said selected connection;
wherein the performance information for each of said instances that offer said service includes a value representing a percentage of work to route to said instance;
wherein the method is performed by one or more computing devices.
1 Assignment
0 Petitions
Accused Products
Abstract
Runtime connection load balancing of work across connections to a clustered computing system involves the routing of requests for a service, based on the current operational performance of each of the instances that offer the service. A connection is selected from an identified connection pool, to connect to an instance that provides the service for routing a work request. The operational performance of the instances may be represented by performance information that characterizes the response time and/or the throughput of the service that is provided by a particular instance on a respective node of the system, and is relative to other instances that offer the same service.
61 Citations
20 Claims
-
1. A computer-implemented method for routing work requests to a computing system that comprises a plurality of computing nodes that each hosts a server instance that provides a service that performs work, the method comprising:
-
receiving a request for a connection to said computing system for requesting said service; identifying a pool of connections that is associated with said service, wherein each connection in said pool is a connection to, and recognized by, a particular server instance; wherein a first connection associated with said service is a connection to and recognized by a first server instance and a second connection associated with said service is a connection to and recognized by a second server instance, wherein the first connection is not the same as the second connection, and the first server instance is not the same as the second server instance; wherein said each connection is one of a plurality of connections that simultaneously existed in said pool prior to receiving said request for a connection; and selecting, from said pool, a connection that is associated with said service, to route a request for performance of work associated with said service; wherein said selecting is based on substantially current performance information about server instances that offer said service that is associated with said selected connection; wherein the performance information for each of said instances that offer said service includes a value representing a percentage of work to route to said instance; wherein the method is performed by one or more computing devices. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory machine-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform:
- receiving a request for a connection to said computing system for requesting said service;
receiving a request for a connection to said computing system for requesting said service; identifying a pool of connections that is associated with said service, wherein each connection in said pool is a connection to, and recognized by, a particular server instance; wherein a first connection associated with said service is a connection to and recognized by a first server instance and a second connection associated with said service is a connection to and recognized by a second server instance, wherein the first connection is not the same as the second connection, and the first server instance is not the same as the second server instance; wherein said each connection is one of a plurality of connections that simultaneously existed in said pool prior to receiving said request for a connection; and selecting, from said pool, a connection that is associated with said service, to route a request for performance of work associated with said service; wherein said selecting is based on substantially current performance information about server instances that offer said service that is associated with said selected connection; wherein the performance information for each of said instances that offer said service includes a value representing a percentage of work to route to said instance. - View Dependent Claims (9, 10, 11, 12, 13, 14)
- receiving a request for a connection to said computing system for requesting said service;
-
15. A computer-implemented method for routing work requests to a computing system that comprises a plurality of computing nodes that each hosts a server instance that provides a service that performs work, the method comprising:
-
identifying a pool of connections that is associated with said service, wherein each connection in said pool is a connection to, and recognized by, a particular server instance; wherein a first connection associated with said service is a connection to and recognized by a first server instance and a second connection associated with said service is a connection to and recognized by a second server instance, wherein the first connection is not the same as the second connection, and the first server instance is not the same as the second server instance; wherein said each connection is one of a plurality of connections that simultaneously existed in said pool prior to receiving a request for a connection; and selecting, from said pool, a connection that is associated with said service, to route a request for performance of work associated with said service; wherein said selecting is based on substantially current performance information about server instances that offer said service that is associated with said selected connection; selecting a connection, from said pool, to retire from said pool; wherein the method is performed by one or more computing devices. - View Dependent Claims (16)
-
-
17. A non-transitory machine-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform:
-
identifying a pool of connections that is associated with said service, wherein each connection in said pool is a connection to, and recognized by, a particular server instance; wherein a first connection associated with said service is a connection to and recognized by a first server instance and a second connection associated with said service is a connection to and recognized by a second server instance, wherein the first connection is not the same as the second connection, and the first server instance is not the same as the second server instance; wherein said each connection is one of a plurality of connections that simultaneously existed in said pool prior to receiving a request for a connection; and selecting, from said pool, a connection that is associated with said service, to route a request for performance of work associated with said service; wherein said selecting is based on substantially current performance information about server instances that offer said service that is associated with said selected connection; selecting a connection, from said pool, to retire from said pool. - View Dependent Claims (18)
-
-
19. A computer-implemented method for routing work requests to a computing system that comprises a plurality of computing nodes that each hosts a server instance that provides a service that performs work, the method comprising:
-
receiving a request for a connection to said computing system for requesting said service; identifying a pool of connections that is associated with said service, wherein each connection in said pool is a connection to, and recognized by, a particular server instance; wherein a first connection associated with said service is a connection to and recognized by a first server instance and a second connection associated with said service is a connection to and recognized by a second server instance, wherein the first connection is not the same as the second connection, and the first server instance is not the same as the second server instance; wherein said each connection is one of a plurality of connections that simultaneously existed in said pool prior to receiving said request for a connection; and selecting, from said pool, a connection that is associated with said service, to route a request for performance of work associated with said service; wherein said selecting is based on substantially current performance information about server instances that offer said service that is associated with said selected connection; selecting a connection, from said pool, to retire from said pool; and wherein the method is performed by one or more computing devices.
-
-
20. A non-transitory machine-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform:
-
receiving a request for a connection to a computing system for requesting a service; identifying a pool of connections that is associated with said service, wherein each connection in said pool is a connection to, and recognized by, a particular server instance; wherein a first connection associated with said service is a connection to and recognized by a first server instance and a second connection associated with said service is a connection to and recognized by a second server instance, wherein the first connection is not the same as the second connection, and the first server instance is not the same as the second server instance; wherein said each connection is one of a plurality of connections that simultaneously existed in said pool prior to receiving said request for a connection; and selecting, from said pool, a connection that is associated with said service, to route a request for performance of work associated with said service; wherein said selecting is based on substantially current performance information about server instances that offer said service that is associated with said selected connection; selecting a connection, from said pool, to retire from said pool.
-
Specification