Server controlled throttling of client to server requests
First Claim
1. A method comprising:
- generating, by a server, one or more data sets, wherein each data set from the one or more data sets includes a plurality of data points representing a characteristic of an instance of client-server communication between a respective client from a plurality of clients and the server, wherein each data point from the plurality of data points represents one or more of;
a user-facing latency associated with a client-to-server request, a backend latency associated with processing of the client-to-server request, and an on-the-wire latency associated with the processing of the client-to-server request;
determining, by the server and based at least in part on the one or more data sets, whether a condition for triggering a client-server communication parameter update has been met; and
responsive to determining that the condition for triggering the client-server communication parameter update has been met;
calculating, by the server, updated client-server communication parameters including at least an updated request retry limit identifying a maximum number of retries that the respective client from the plurality of clients are able to attempt prior to determining that a resource is unavailable; and
transmitting, by the server and to one or more clients of the plurality of clients, the updated client-server communication parameters.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the invention provide methodologies for server-controlled throttling of client to server requests in order to improve client-server communication performance. Embodiments of the invention relate to systems and methods that provide routines for real-time monitoring of requests originating from client devices, for analyzing the characteristics of the requests, for developing protocols for managing requests within a client-server infrastructure, and for facilitating client adherence to the developed protocols. The systems and methods contemplated by the present invention involve means for monitoring the requests received by servers from client devices, means for analyzing the characteristics of the requests, means for developing client-server communication protocols intended to improve client-server communication performance, and means for delivering the protocols to a plurality of client devices.
36 Citations
20 Claims
-
1. A method comprising:
-
generating, by a server, one or more data sets, wherein each data set from the one or more data sets includes a plurality of data points representing a characteristic of an instance of client-server communication between a respective client from a plurality of clients and the server, wherein each data point from the plurality of data points represents one or more of;
a user-facing latency associated with a client-to-server request, a backend latency associated with processing of the client-to-server request, and an on-the-wire latency associated with the processing of the client-to-server request;determining, by the server and based at least in part on the one or more data sets, whether a condition for triggering a client-server communication parameter update has been met; and responsive to determining that the condition for triggering the client-server communication parameter update has been met; calculating, by the server, updated client-server communication parameters including at least an updated request retry limit identifying a maximum number of retries that the respective client from the plurality of clients are able to attempt prior to determining that a resource is unavailable; and transmitting, by the server and to one or more clients of the plurality of clients, the updated client-server communication parameters. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A device comprising:
-
a processor; and a computer readable storage medium having stored thereon one or more modules executable by the processor to; generate one or more data sets, wherein each data set from the one or more data sets includes a plurality of data points representing a characteristic of an instance of client-server communication between a respective client forma plurality of clients and the device, wherein each data point from the plurality of data points represents one or more of;
a user-facing latency associated with a client-to-server request, a backend latency associated with processing of the client-to-server request, and an on-the-wire latency associated with the processing of the client-to-server request;determine, based at least in part on the one or more data sets, whether a condition for triggering a client-server communication parameter update has been met; and responsive to determining that the condition for triggering the client-server communication parameter update has been met; calculate updated client-server communication parameters including at least an updated request retry limit identifying a maximum number of retries that the respective client from the plurality of clients are able to attempt prior to determining that a resource is unavailable; and transmit, to one or more clients of the plurality of clients, the updated client-server communication parameters. - View Dependent Claims (12, 13, 14, 15, 20)
-
-
16. A non-transitory computer-readable storage medium encoded with instructions that, when executed, cause one or more processors of a computing device to:
-
generate one or more data sets, wherein each data set from the one or more data sets includes a plurality of data points representing a characteristic of an instance of client-server communication between a respective client from a plurality of clients and the device, wherein each data point from the plurality of data points represents one or more of;
a user-facing latency associated with a client-to-server request, a backend latency associated with processing of the client-to-server request, and an on-the-wire latency associated with the processing of the client-to-server request;determine, based at least in part on the one or more data sets, whether a condition for triggering a client-server communication parameter update has been met; and responsive to determining that the condition for triggering the client-server communication parameter update has been met; calculate updated client-server communication parameters including at least an updated request retry limit identifying a maximum number of retries that the respective client from the plurality of clients are able to attempt prior to determining that a resource is unavailable; and transmit, to one or more clients of the plurality of clients, the updated client-server communication parameters. - View Dependent Claims (17, 18, 19)
-
Specification