Automatic synchronous or asynchronous execution of requests
AssigneeSalesforce, Inc.
InventorSowmya Tammana
Life of this patent
Estimating the term…
Abstract
Systems and techniques are provided that implement application programming interfaces (APIs) that can be executed synchronously or asynchronously depending on the expected response time of the API, the status of the API and/or systems that implement the API, the identity and/or type of user making a request via the API, historical requirements or operation of the API, and/or other factors.
Claims18
A method comprising:
- receiving a first request to an API from a first requestor;
- determining a first expected response time for the first request received from the first requestor based on a prior execution time of the first request and a first host system status for a host for the API;
- and
- responsive to determining that the first expected response time is over a threshold period and that further requests can be queued on a messaging queue for the API, executing the first request received from the first requestor asynchronously and providing a request identifier to the first requestor, or
- responsive to determining that the first expected response time is not over the threshold and that the first host system status for the host for the API is a good status, executing the first request received from the first requestor synchronously and providing a response to the first request to the first requestor.
A system for managing requests in a computerized data system, the system comprising:
- a plurality of instructions stored on a computer-readable medium;
- one or more computer processors configured to execute the plurality of instructions to operate a service to receive and process requests, the service configured to:
- receive a first request to an API from a first requestor;
- determine a first expected response time for the first request received from the first requestor based on a prior execution time of the first request and a first host system status for a host for the API;
- and
- responsive to determining that the first expected response time is over a threshold period and that further requests can be queued on a messaging queue for the API, execute the first request received from the first requestor asynchronously and providing a request identifier to the first requestor, or
- responsive to determining that the first expected response time is not over the threshold and that the first host system status for the host for the API is a good status, execute the first request received from the first requestor synchronously and provide a response to the first request to the first requestor.
A non-transitory computer-readable medium storing a plurality of instructions which, when executed by a computer processor, cause the processor to:
- receive a first request to an API from a first requestor;
- determine a first expected response time for the first request received from the first requestor based on a prior execution time of the first request and a first host system status for a host for the API;
- and
- responsive to determining that the first expected response time is over a threshold period and that further requests can be queued on a messaging queue for the API, execute the first request received from the first requestor asynchronously and providing a request identifier to the first requestor, or
- responsive to determining that the first expected response time is not over the threshold and that the first host system status for the host for the API is a good status, execute the first request received from the first requestor synchronously and provide a response to the first request to the first requestor.
Dependencies are inferred from the claim text.