# US 10,454,843 B2 · Extensible mechanisms for workload shaping and anomaly mitigation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,454,843 B2
- Document ID: US10454843B2
- Status: Granted
- Kind: B2
- Application number: 14/509,694
- Filed: 2014-10-08
- Published: 2015-04-09
- Granted: 2019-10-22
- Earliest claimed: 2013-10-09
- Assignees: salesforce.com, inc.
- Applicants: salesforce.com, inc.
- Inventors: Fabio Meireles Valbuena
- Web page: https://patentgrep.com/patent/US10454843B2

## CPC

- H04L 47/76: using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions
- H04L 41/5051: Service on demand, e.g. definition and deployment of services in real time
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Techniques and mechanisms for servicing requests for utilization of resources within a computing environment. A request is received from a remote electronic computing device with a regulator agent. The regulator functions to determine whether to regulate a request or to allow the request to be delivered without regulation. Regulating the request includes causing the request to be rejected, re-routed, isolated or delayed. Selectively regulating the request with the regulator based at least on application-level resources to be utilized by the application server in response to the request. Sending the request to a regulation server or to a computing device to provide an application server communicatively coupled with the regulator server depending on the regulation to be performed, if any.

## Claims

### Claim 1

A system for servicing requests for utilization of resources within a computing environment, the system comprising:
a regulator to receive a request from a remote electronic computing device, the request to utilize resources of at least one computing device within the computing environment, the regulator to determine in real time and at an application level whether to regulate a request or to allow the request to be delivered without regulation, wherein regulating the request comprises causing the request to be one of rejected, re-routed, isolated and delayed based on at least one of a specific organization, user, request performance trait, and target node data source, wherein the regulator makes the determination at the application level based on a resource cost analysis and whether the request represents an anomaly with respect to requests in a request stream;
a computing device to provide an application server communicatively coupled with the regulator, the computing device having resources to generate a response to the request and to cause the response to be transmitted to the remote electronic computing device;
wherein the regulator selectively regulates the request in real time based on application-level resources to be utilized by the application server in response to the request by analyzing the request prior to delivery to the application server, wherein the selective regulation at least routes requests to consume excessive portions of a resource class to a queue for subsequent service at a controlled rate, wherein the selective regulation further comprises filtering to select among incoming requests and an action that determines a handling behavior based on the requests that satisfies the filter predicates;
wherein the regulator receives application-level feedback information from one or more application servers configured to process requests to modify subsequent request filtering based, at least in part, on the application-level feedback information.

### Claim 2 (depends on 1)

The system of claim 1 where re-routing the request comprises enqueuing one or more requests and dispatching requests at a pre-selected rate.

### Claim 3 (depends on 1)

The system of claim 1 where re-routing the request comprises enqueuing one or more requests and maintaining a pre-selected number of concurrent requests.

### Claim 4 (depends on 1)

The system of claim 1 wherein isolating the request comprises causing the request to be isolated to be directed to a computing device having a isolation mechanism to isolate the request from the application server.

### Claim 5 (depends on 1)

The system of claim 1 further comprising a plurality of application servers coupled with the regulator.

### Claim 6 (depends on 5)

The system of claim 5 further comprising a plurality of regulators coupled with the plurality of application servers, wherein the plurality of regulators coordinate regulation of requests.

### Claim 7 (depends on 1)

The system of claim 1 wherein the regulator determines a regulation action based on at least one filter and at least one corresponding action, wherein the at least one filter determines what class of request attributes and features to select among incoming requests and wherein the action determines what regulation action is to be performed to satisfy the at least one filter.

### Claim 8 (depends on 1)

The system of claim 1 wherein the regulator utilizes real-time and historic metrics from a plurality of resource classes of the application server to identify and classify usage patterns.

### Claim 9 (depends on 1)

The system of claim 1 wherein the regulator operates within a multi-tenant on-demand services environment and the regulator provides regulation of the requests based at least on organization, user, request performance traits or data source.

### Claim 10

A non-transitory computer-readable medium having instructions stored thereon that, when executed, cause one or more processors to servicing requests for utilization of resources within a computing environment, the instructions comprising instructions to cause the processors to:
receive, with a regulator agent, a request from a remote electronic computing device, the request to utilize resources of at least one computing device within the computing environment, the regulator to determine whether to regulate a request or to allow the request to be delivered without regulation, wherein regulating the request comprises causing the request to be one of rejected, re-routed, isolated and delayed based on at least one of a specific organization, user, request performance trait, and target node data source, wherein the regulator makes the determination at the application level based on a resource cost analysis and whether the request represents an anomaly with respect to requests in a request stream;
provide, with a computing device, an application server communicatively coupled with the regulator, the computing device having resources to generate a response to the request and to cause the response to be transmitted to the remote electronic computing device;
wherein the regulator selectively regulates the request based on application-level resources to be utilized by the application server in response to the request by analyzing the request prior to delivery to the application server, wherein the selective regulation at least routes requests to consume excessive portions of a resource class to a queue for subsequent service at a controlled rate, wherein the selective regulation further comprises filtering to select among incoming requests and an action that determines a handling behavior based on the requests that satisfies the filter predicates;
wherein the regulator receives application-level feedback information from one or more application servers configured to process requests to modify subsequent request filtering based, at least in part, on the application-level feedback information.

### Claim 11 (depends on 10)

The non-transitory computer-readable medium of claim 10 wherein the instructions to cause re-routing of the request comprise instructions that, when executed, cause the one or more processors to enqueue one or more requests and dispatching requests at a pre-selected rate.

### Claim 12 (depends on 10)

The non-transitory computer-readable medium of claim 10 wherein the instructions to cause re-routing of the request comprise instructions that, when executed, cause the one or more processors to enqueue one or more requests and maintaining a pre-selected number of concurrent requests.

### Claim 13 (depends on 10)

The non-transitory computer-readable medium of claim 10 wherein the instructions to cause isolating of the request comprise instructions that, when executed cause the one or more processors to cause the request to be isolated to be directed to a computing device having an isolation mechanism to isolate the request from the application server.

### Claim 14 (depends on 10)

The non-transitory computer-readable medium of claim 10 further comprising instructions that, when executed, cause a plurality of regulators coupled with the plurality of application servers to coordinate regulation of requests.

### Claim 15 (depends on 10)

The non-transitory computer-readable medium of claim 10 wherein the regulator determines a regulation action based on at least one filter and at least one corresponding action, wherein the at least one filter determines what class of request attributes and features to select among incoming requests and wherein the action determines what regulation action is to be performed to satisfy the at least one filter.

### Claim 16 (depends on 10)

The non-transitory computer-readable medium of claim 10 wherein the regulator utilizes real-time and historic metrics from a plurality of resource classes of the application server to identify and classify usage patterns.

### Claim 17 (depends on 10)

The non-transitory computer-readable medium of claim 10 wherein the regulator operates within a multi-tenant on-demand services environment and the regulator provides regulation of the requests based at least on organization, user, request performance traits or data source.

### Claim 18

A method for servicing requests for utilization of resources within a computing environment, the method comprising:
receiving, with a regulator agent, a request from a remote electronic computing device, the request to utilize resources of at least one computing device within the computing environment, the regulator to determine whether to regulate a request or to allow the request to be delivered without regulation, wherein regulating the request comprises causing the request to be one of rejected, re-routed, isolated and delayed based on at least one of a specific organization, user, request performance trait, and target node data source, wherein the regulator makes the determination at the application level based on a resource cost analysis and whether the request represents an anomaly with respect to requests in a request stream;
providing, with a computing device, an application server communicatively coupled with the regulator, the computing device having resources to generate a response to the request and to cause the response to be transmitted to the remote electronic computing device;
wherein the regulator selectively regulates the request based on application-level resources to be utilized by the application server in response to the request by analyzing the request prior to delivery to the application server, wherein the selective regulation at least routes requests to consume excessive portions of a resource class to a queue for subsequent service at a controlled rate, wherein the selective regulation further comprises filtering to select among incoming requests and an action that determines a handling behavior based on the requests that satisfies the filter predicates;
wherein the regulator receives application-level feedback information from one or more application servers configured to process requests to modify subsequent request filtering based, at least in part, on the application-level feedback information.

### Claim 19 (depends on 18)

The method of claim 18 where re-routing the request comprises enqueuing one or more requests and dispatching requests at a pre-selected rate.

### Claim 20 (depends on 18)

The method of claim 18 where re-routing the request comprises enqueuing one or more requests and maintaining a pre-selected number of concurrent requests.

### Claim 21 (depends on 18)

The method of claim 18 wherein isolating the request comprises causing the request to be isolated to be directed to a computing device having a isolation mechanism to isolate the request from the application server.

### Claim 22 (depends on 21)

The method of claim 21 further comprising a plurality of regulators coupled with the plurality of application servers, wherein the plurality of regulators coordinate regulation of requests.

### Claim 23 (depends on 22)

The method of claim 22 wherein the regulator determines a regulation action based on at least one filter and at least one corresponding action, wherein the at least one filter determines what class of request attributes and features to select among incoming requests and wherein the action determines what regulation action is to be performed to satisfy the at least one filter.

### Claim 24 (depends on 18)

The method of claim 18 wherein the regulator utilizes real-time and historic metrics from a plurality of resource classes of the application server to identify and classify usage patterns.

### Claim 25 (depends on 18)

The method of claim 18 wherein the regulator operates within a multi-tenant on-demand services environment and the regulator provides regulation of the requests based at least on organization, user, request performance traits or data source.
