Enhancing API service schemes
First Claim
Patent Images
1. A computer-implemented method, comprising:
- determining a current service scheme that specifies a sequential order that each service call out in a set of service call outs for serviced API requests for an application will be sent out to respective service servers for processing;
collecting performance data for the serviced API requests for the application, wherein the API requests were serviced based on the current service scheme that specifies the sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to respective service servers for processing;
determining whether a new service scheme for servicing the application at runtime is to be determined for the application based at least in part on a new service scheme condition, wherein the new service scheme specifies a different sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to the respective service servers for processing;
in response to determining that a new service scheme for servicing the application at runtime is to be determined based at least in part on the new service scheme condition, determining a new service scheme that specifies another sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to the respective service servers for processing based at least in part on at least a portion of the collected performance data for serviced API requests associated with the application, wherein in the another sequential order a first service call out is ordered before a second service call out based on a failure score of the first service call out as indicated by the performance data being more than a failure score of the second service call out as indicated by the performance data;
receiving an indication of approval for the new service scheme; and
servicing a received API request associated with the application using the new service scheme that was determined based at least in part on at least a portion of the collected performance data for serviced API requests associated with the application.
3 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of enhancing API servicing schemes are disclosed. A set of proxy code associated with servicing the API requests of an application is analyzed during development time to determine if any portion can be modified to improve the service scheme, prior to executing the set of proxy code in a runtime. After the set of proxy code is deployed in a runtime environment, performance data associated with the current service scheme is collected and periodically used to determine whether the service scheme for the API requests of the application is to be updated.
27 Citations
20 Claims
-
1. A computer-implemented method, comprising:
-
determining a current service scheme that specifies a sequential order that each service call out in a set of service call outs for serviced API requests for an application will be sent out to respective service servers for processing; collecting performance data for the serviced API requests for the application, wherein the API requests were serviced based on the current service scheme that specifies the sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to respective service servers for processing; determining whether a new service scheme for servicing the application at runtime is to be determined for the application based at least in part on a new service scheme condition, wherein the new service scheme specifies a different sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to the respective service servers for processing; in response to determining that a new service scheme for servicing the application at runtime is to be determined based at least in part on the new service scheme condition, determining a new service scheme that specifies another sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to the respective service servers for processing based at least in part on at least a portion of the collected performance data for serviced API requests associated with the application, wherein in the another sequential order a first service call out is ordered before a second service call out based on a failure score of the first service call out as indicated by the performance data being more than a failure score of the second service call out as indicated by the performance data; receiving an indication of approval for the new service scheme; and servicing a received API request associated with the application using the new service scheme that was determined based at least in part on at least a portion of the collected performance data for serviced API requests associated with the application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system comprising one or more processors and one or more storage devices storing instructions that are operable, when executed by the one or more processors, to cause the one or more processors to perform operations comprising:
-
determining a current service scheme that specifies a sequential order that each service call out in a set of service call outs for serviced API requests for an application will be sent out to respective service servers for processing; collecting performance data for the serviced API requests for the application, wherein the API requests were serviced based on the current service scheme that specifies the sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to respective service servers for processing; determining whether a new service scheme for servicing the application at runtime is to be determined for the application based at least in part on a new service scheme condition, wherein the new service scheme specifies a different sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to the respective service servers for processing; in response to determining that a new service scheme for servicing the application at runtime is to be determined based at least in part on the new service scheme condition, determining a new service scheme that specifies another sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to the respective service servers for processing based at least in part on at least a portion of the collected performance data for serviced API requests associated with the application, wherein in the another sequential order a first service call out is ordered before a second service call out based on a failure score of the first service call out as indicated by the performance data being more than a failure score of the second service call out as indicated by the performance data; receiving an indication of approval for the new service scheme; and servicing a received API request associated with the application using the new service scheme that was determined based at least in part on at least a portion of the collected performance data for serviced API requests associated with the application. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A computer-readable storage device storing software comprising instructions executable by one or more computers which, upon such execution, cause the one or more computers to perform operations comprising:
-
determining a current service scheme that specifies a sequential order that each service call out in a set of service call outs for serviced API requests for an application will be sent out to respective service servers for processing; collecting performance data for the serviced API requests for the application, wherein the API requests were serviced based on the current service scheme that specifies the sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to respective service servers for processing; determining whether a new service scheme for servicing the application at runtime is to be determined for the application based at least in part on a new service scheme condition, wherein the new service scheme specifies a different sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to the respective service servers for processing; in response to determining that a new service scheme for servicing the application at runtime is to be determined based at least in part on the new service scheme condition, determining a new service scheme that specifies another sequential order that each of the service call outs in the set of service call outs for the API requests will be sent out to the respective service servers for processing based at least in part on at least a portion of the collected performance data for serviced API requests associated with the application, wherein in the another sequential order a first service call out is ordered before a second service call out based on a failure score of the first service call out as indicated by the performance data being more than a failure score of the second service call out as indicated by the performance data; receiving an indication of approval for the new service scheme; and servicing a received API request associated with the application using the new service scheme that was determined based at least in part on at least a portion of the collected performance data for serviced API requests associated with the application.
-
Specification