CPC G06F 9/54 (2013.01) [G06F 8/433 (2013.01); G06F 16/9024 (2019.01)] | 20 Claims |
1. A computer-implemented method comprising:
receiving control instructions for an API, wherein the control instructions comprise a set of actions associated with the API;
generating a dependency graph that maps out dependencies among the set of actions by:
determining one or more dependency relationships among the set of actions based on at least metadata associated with the control instructions; and
ordering the set of actions based on at least the one or more dependency relationships;
determining an execution plan based on at least the dependency graph, wherein the execution plan specifies an initial arrangement of a request processing pipeline for performing the set of actions, wherein the initial arrangement reflects the one or more dependency relationships among the set of actions;
receiving, from a user computing device, an API request for the API;
processing the API request by performing the set of actions in accordance with the execution plan;
monitoring performance of the set of actions associated with the API over a period of time;
determining a modification to the execution plan is warranted based on at least the monitoring;
dynamically modifying the execution plan based on at least the monitoring, wherein the modified execution plan specifies a rearrangement of the request processing pipeline for performing the set of actions, wherein the rearrangement reflects an ordering of a relationship between two or more actions of the set of actions that is different from that reflected by the one or more dependency relationships; and
processing an additional API request for the API by performing the set of actions in accordance with the modified execution plan.
|