IP Library Granted Patent US 11,457,063
Granted Patent B1
US 11,457,063 · App. 17/319,300 · Granted Sep 27, 2022

Distributing risk of multiple realms across multiple resources based on a realm risk model

Inventors: Ahi Kodi (Burlington, MA); Arun Sathnur (Boston, MA)
Assignee: Salesforce, Inc.
H04L67/1001G06F9/5083H04L43/0876
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,457,063
App. No.
17/319,300
Granted
Sep 27, 2022
Kind
B1
Abstract

Methods, computer readable media, and devices for distributing risk of multiple realms across multiple resources based on a realm risk model are disclosed. One method may include determining a time score based on an average response, a traffic score based on an average client request rate, and a risk score based on the time score and the traffic score for a plurality of realms, distributing the plurality of realms across a fixed number of resources based on the risk scores of the plurality of realms, and in response to a change in a risk score of a realm, redistributing the plurality of realms across the fixed number of resources based on a difference between a maximum risk score and a minimum risk score.

Claims (61)

1. A computer-implemented method comprising:

for one or more realms in a plurality of realms:

determining a time score based on an average response time of the respective realm;

determining a traffic score based on an average client request rate of the respective realm; and

determining a risk score based on the time score and the traffic score of the respective realm;

distributing the plurality of realms across a fixed number of resources based on the risk scores of the plurality of realms such that:

any one realm is distributed across at least two resources that are assigned an equal portion of the risk score of the any one realm; and

a difference between a sum of risk scores assigned to any one resource and a sum of risk scores assigned to any other resource is within a risk score threshold; and

in response to a change in a risk score of a realm, redistributing the plurality of realms across the fixed number of resources such that a difference between a maximum sum of risk scores assigned to a resource and a minimum sum of risk scores assigned to a different resource is within the risk score threshold.

2. The computer-implemented method of claim 1 , wherein determining a time score based on an average response time of the respective realm comprises:

determining the average response time over a rolling seven day period; and

assigning an integer value as the time score based on the average response time being within one of a plurality of ranges, a range having a shorter average response time indicating a smaller integer value and a range having a longer average response time indicating a larger integer value.

3. The computer-implemented method of claim 2 , wherein the plurality of ranges comprises nine ranges and the integer value is one of the integer values of zero to eight.

4. The computer-implemented method of claim 1 , wherein determining a traffic score based on an average client request rate of the respective realm comprises:

determining the average client request rate over a rolling thirty day period; and

assigning an integer value as the traffic score based on the average client request rate being within one of a plurality of ranges, a range having a lower average client request rate indicating a smaller integer value and a range having a larger average client request rate indicating a larger integer value.

5. The computer-implemented method of claim 4 , wherein the plurality of ranges comprises eleven ranges and the integer value is one of the integer values of zero to ten.

6. The computer-implemented method of claim 1 , wherein determining a risk score based on the time score and the traffic score of the respective realm comprises combining the time score and the traffic score to determine the risk score.

7. The computer-implemented method of claim 1 , wherein:

a realm comprises a web site;

a resource comprises a web service; and

distributing any one realm across at least two resources comprises configuring the at least two web services of the at least two resources to respond to a corresponding amount of traffic for the web site of the any one realm.

8. The computer-implemented method of claim 1 , wherein the risk score threshold is two.

9. A non-transitory machine-readable storage medium that provides instructions that, if executed by a processor, are configurable to cause the processor to perform operations comprising:

for one or more realms in a plurality of realms:

determining a time score based on an average response time of the respective realm;

determining a traffic score based on an average client request rate of the respective realm; and

determining a risk score based on the time score and the traffic score of the respective realm;

distributing the plurality of realms across a fixed number of resources based on the risk scores of the plurality of realms such that:

any one realm is distributed across at least two resources that are assigned an equal portion of the risk score of the any one realm; and

a difference between a sum of risk scores assigned to any one resource and a sum of risk scores assigned to any other resource is within a risk score threshold; and

in response to a change in a risk score of a realm, redistributing the plurality of realms across the fixed number of resources such that a difference between a maximum sum of risk scores assigned to a resource and a minimum sum of risk scores assigned to a different resource is within the risk score threshold.

10. The non-transitory machine-readable storage medium of claim 9 , wherein determining a time score based on an average response time of the respective realm comprises:

determining the average response time over a rolling seven day period; and

assigning an integer value as the time score based on the average response time being within one of a plurality of ranges, a range having a shorter average response time indicating a smaller integer value and a range having a longer average response time indicating a larger integer value.

11. The non-transitory machine-readable storage medium of claim 10 , wherein the plurality of ranges comprises nine ranges and the integer value is one the integer values of zero to eight.

12. The non-transitory machine-readable storage medium of claim 9 , wherein determining a traffic score based on an average client request rate of the respective realm comprises:

determining the average client request rate over a rolling thirty day period; and

assigning an integer value as the traffic score based on the average client request rate being within one of a plurality of ranges, a range having a lower average client request rate indicating a smaller integer value and a range having a larger average client request rate indicating a larger integer value.

13. The non-transitory machine-readable storage medium of claim 12 , wherein the plurality of ranges comprises eleven ranges and the integer value is one of the integer values of zero to ten.

14. The non-transitory machine-readable storage medium of claim 9 , wherein determining a risk score based on the time score and the traffic score of the respective realm comprises combining the time score and the traffic score to determine the risk score.

15. An apparatus comprising:

a processor; and

a non-transitory machine-readable storage medium that provides instructions that, if executed by a processor, are configurable to cause the processor to perform operations comprising:

for one or more realms in a plurality of realms:

determining a time score based on an average response time of the respective realm;

determining a traffic score based on an average client request rate of the respective realm; and

determining a risk score based on the time score and the traffic score of the respective realm;

distributing the plurality of realms across a fixed number of resources based on the risk scores of the plurality of realms such that:

any one realm is distributed across at least two resources that are assigned an equal portion of the risk score of the any one realm; and

a difference between a sum of risk scores assigned to any one resource and a sum of risk scores assigned to any other resource is within a risk score threshold; and

in response to a change in a risk score of a realm, redistributing the plurality of realms across the fixed number of resources such that a difference between a maximum sum of risk scores assigned to a resource and a minimum sum of risk scores assigned to a different resource is within the risk score threshold.

16. The apparatus of claim 15 , wherein determining a time score based on an average response time of the respective realm comprises:

determining the average response time over a rolling seven day period; and

assigning an integer value as the time score based on the average response time being within one of a plurality of ranges, a range having a shorter average response time indicating a smaller integer value and a range having a longer average response time indicating a larger integer value.

17. The apparatus of claim 16 , wherein the plurality of ranges comprises nine ranges and the integer value is one the integer values of zero to eight.

18. The apparatus of claim 15 , wherein determining a traffic score based on an average client request rate of the respective realm comprises:

determining the average client request rate over a rolling thirty day period; and

assigning an integer value as the traffic score based on the average client request rate being within one of a plurality of ranges, a range having a lower average client request rate indicating a smaller integer value and a range having a larger average client request rate indicating a larger integer value.

19. The apparatus of claim 18 , wherein the plurality of ranges comprises eleven ranges and the integer value is one of the integer values of zero to ten.

20. The apparatus of claim 15 , wherein determining a risk score based on the time score and the traffic score of the respective realm comprises combining the time score and the traffic score to determine the risk score.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0529 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2021
From: KODI, AHI; SATHNUR, ARUN
To: SALESFORCE.COM, INC.
Reel/Frame 056228/0950 →