System and method for managing load in a distributed storage system
First Claim
1. A computer-implemented method for managing load in a distributed storage system, comprising:
- at a first instance server in the distributed storage system, the first instance server having memory and at least one processor coupled to the memory;
issuing a first plurality of transactional requests to a second instance server, the first plurality of transactional requests for creating, modifying, or deleting objects within the distributed storage system;
obtaining one or more messages from the second instance server in response to the first plurality of transactional requests, the one or more messages indicating a utilization rate of the second instance server;
determining a transaction rate limit for the second instance server based on the utilization rate of the second instance server; and
issuing a second plurality of transactional requests to the second instance server, wherein the second plurality of transactional requests are issued at a rate no greater than the transaction rate limit.
1 Assignment
0 Petitions
Accused Products
Abstract
The various embodiments described herein include methods, systems, and devices for managing load in a distributed storage system. In one aspect, a method is performed at a first instance server in the distributed storage system, the first instance server having memory and at least one processor coupled to the memory. The method includes: (i) issuing a first plurality of requests to a second instance server; (ii) obtaining one or more messages from the second instance server in response to the first plurality of requests, the messages indicating a utilization rate of the second instance server; (iii) determining a transaction rate limit for the second instance server based on the utilization rate of the second instance server; and (iv) issuing a second plurality of requests to the second instance server, where the second plurality of requests are issued at a rate no greater than the transaction rate limit.
27 Citations
26 Claims
-
1. A computer-implemented method for managing load in a distributed storage system, comprising:
at a first instance server in the distributed storage system, the first instance server having memory and at least one processor coupled to the memory; issuing a first plurality of transactional requests to a second instance server, the first plurality of transactional requests for creating, modifying, or deleting objects within the distributed storage system; obtaining one or more messages from the second instance server in response to the first plurality of transactional requests, the one or more messages indicating a utilization rate of the second instance server; determining a transaction rate limit for the second instance server based on the utilization rate of the second instance server; and issuing a second plurality of transactional requests to the second instance server, wherein the second plurality of transactional requests are issued at a rate no greater than the transaction rate limit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
12. A distributed storage system, comprising:
-
a plurality of instance servers communicatively coupled to one another, each instance server of the plurality of instance servers including one or more respective processors coupled to memory, the plurality of instance servers including a first instance server and a second instance server; the first instance server configured to; issue a first plurality of transactional requests to a second instance server, the first plurality of transactional requests for creating, modifying, or deleting objects within the distributed storage system; obtain one or more messages from the second instance server in response to the first plurality of transactional requests, the one or more messages indicating a utilization rate of the second instance server; determine a transaction rate limit for the second instance server based on the utilization rate of the second instance server; and issue a second plurality of transactional requests to the second instance server, wherein the second plurality of transactional requests are issued at a rate no greater than the transaction rate limit. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer-readable storage medium storing at least one program configured for execution by at least one processor of a first instance server within a distributed storage system, the at least one program comprising instructions to cause the first instance server to:
-
issue a first plurality of transactional requests to a second instance server, the first plurality of transactional requests for creating, modifying, or deleting objects within the distributed storage system; obtain one or more messages from the second instance server in response to the first plurality of transactional requests, the one or more messages indicating a utilization rate of the second instance server; determine a transaction rate limit for the second instance server based on the utilization rate of the second instance server; and issue a second plurality of transactional requests to the second instance server, wherein the second plurality of transactional requests are issued at a rate no greater than the transaction rate limit. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26)
-
Specification