Prioritizing service requests
First Claim
1. A non-transitory computer-readable medium embodying a program executable in at least one computing device, the program comprising:
- code that determines a load associated with a service according to data describing an aggregate load status across a plurality of instances of a service provider application that is configured to provide the service;
code that determines at least one threshold relative to a load associated with a brownout condition producing degraded performance across all service requests for the service;
code that, in response to receiving a service request destined for processing by the service provider application, prioritizes the service request when the load associated with the service meets the at least one threshold, the service request being initially prioritized for an initial processing stage of the service provider application based at least in part on a plurality of client-specified parameters included in the service request and indicating a priority of the service request, the service request being subsequently prioritized for an additional processing stage of the service provider application based at least in part on the plurality of client-specified parameters and a result of the initial processing stage; and
wherein the plurality of client-specified parameters include a droppability parameter indicating whether the service request is droppable, a deadline parameter indicating a deadline for completion of processing of the service request, and a latency sensitivity parameter indicating a latency sensitivity of the service request.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed are various embodiments for prioritizing service requests. A service request destined for processing by a service provider is obtained in at least one computing device. The service provider is configured to provide a service. The service request includes at least one client-specified parameter indicating a priority of the service request. A load associated with the service is determined. The service request is prioritized for an initial processing stage of the service provider when the load meets at least one threshold. The prioritizing for the initial processing stage is based at least in part on the at least one client-specified parameter. The service request is prioritized for an additional processing stage of the service provider when the load meets the at least one threshold. The prioritizing for the additional processing stage is based at least in part on the at least one client-specified parameter and a result of the initial processing stage.
81 Citations
24 Claims
-
1. A non-transitory computer-readable medium embodying a program executable in at least one computing device, the program comprising:
-
code that determines a load associated with a service according to data describing an aggregate load status across a plurality of instances of a service provider application that is configured to provide the service; code that determines at least one threshold relative to a load associated with a brownout condition producing degraded performance across all service requests for the service; code that, in response to receiving a service request destined for processing by the service provider application, prioritizes the service request when the load associated with the service meets the at least one threshold, the service request being initially prioritized for an initial processing stage of the service provider application based at least in part on a plurality of client-specified parameters included in the service request and indicating a priority of the service request, the service request being subsequently prioritized for an additional processing stage of the service provider application based at least in part on the plurality of client-specified parameters and a result of the initial processing stage; and wherein the plurality of client-specified parameters include a droppability parameter indicating whether the service request is droppable, a deadline parameter indicating a deadline for completion of processing of the service request, and a latency sensitivity parameter indicating a latency sensitivity of the service request. - View Dependent Claims (2)
-
-
3. A system, comprising:
-
at least one computing device; a service provider application executable in the at least one computing device, the service provider application being configured to provide a service; and a request prioritization application executable in the at least one computing device, the request prioritization application comprising; logic that, in response to receiving a service request destined for processing by the service provider application, prioritizes the service request when a load associated with the service meets at least one threshold, the service request including at least one client-specified parameter indicating a priority of the service request, the service request being initially prioritized for an initial processing stage of the service provider application based at least in part on the at least one client-specified parameter, the service request being subsequently prioritized for an additional processing stage of the service provider application based at least in part on the at least one client-specified parameter and a result of the initial processing stage. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method, comprising:
-
receiving, via at least one of one or more computing devices, a service request destined for processing by a service provider configured to provide a service, the service request including at least one client-specified parameter indicating a priority of the service request; determining, via at least one of the one or more computing devices, a load associated with the service; prioritizing, via at least one of the one or more computing devices, the service request for an initial processing stage of the service provider when the load meets at least one threshold, the prioritizing being based at least in part on the at least one client-specified parameter; and prioritizing, via at least one of the one or more computing devices, the service request for at least one additional processing stage of the service provider when the load meets the at least one threshold, the prioritizing being based at least in part on the at least one client-specified parameter and a result of the initial processing stage. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification