IP Library Granted Patent US 8,510,600
Granted Patent B2
US 8,510,600 · App. 13/718,062 · Granted Aug 13, 2013

System and method for provisioning and running a cross-cloud test grid

Inventors: Tal Broda (Sunnyvale, CA); Matthew Solnit (San Jose, CA); Kenneth C. Gardner (Palo Alto, CA); Craig R. Powers (San Francisco, CA); Michael Hemmert (Scotts Valley, CA); Charles A. Vazac (San Francisco, CA); Kendall Cosby (Aurora, CO)
Assignee: SOASTA, Inc.
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 8,510,600
App. No.
13/718,062
Granted
Aug 13, 2013
Kind
B2
Abstract

An automated method for provisioning a grid used to run a load test on a target website includes sending one or more requests in a multi-threaded manner to at least one cloud provider, the one or more requests for an allocation of N load server instances and M result server instances which comprise the grid. Requests received back from the cloud provider are also handled in a multi-threaded manner; any errors occurring during the allocation being corrected automatically. The N load server instances and the M result server instances are then verified to be operational and correctly running software deployed to provide defined test services. Errors identified during the verification are automatically corrected either by attempting to restart a failed instance or allocating a different instance.

Claims (23)

1. A method of cloud computing comprising:

executing a program on a first computing device that allows a use to specify parameters of a computing, grid for use in running a load test composition on a target website or web-based application, the parameters including a first number of load server instances and a second number of result server instances;

responsive to a first user input, automatically provisioning the computing grid by interacting with an application programming interface (API) of one or more cloud providers to allocate the first number of load server instances and the second number of results server instances, and to deploy software that runs on the load server instances and the result server instances needed to execute the load test composition.

2. The method of claim 1 wherein the automatic provisioning comprises sending one or more requests to the cloud providers an allocation of the first number of load server instances and the second number of result server instances.

3. The method of claim 2 wherein the automatic provisioning further comprises handling responses to the one or more requests received from the cloud providers, the handling of the responses including correcting errors in the allocation.

4. The method of claim 1 wherein the automatic provisioning comprises verifying that each of the first number of load server instances and the second number of result server instances are operational and correctly running the software deployed.

5. The method of claim 4 wherein the automatic provisioning further comprises correcting errors identified during the verifying by attempting to restart a failed load or result server instance.

6. The method of claim 4 wherein the automatic provisioning further comprises correcting errors identified during the verifying by allocating a different load or result server instance.

7. The method of claim 2 wherein the allocation is performed utilizing multiple availability zones.

8. The method of claim 1 wherein the user input comprises a click of a user interface button.

9. The method of claim 1 further comprising, responsive to a second user input, executing the load test composition on the target website or web-based application.

10. The method of claim 9 further comprising outputting test results of the load test composition in real-time on an analytic dashboard.

11. The method of claim 10 wherein the analytic dashboard includes a display of cross-cloud consolidated results streaming in real-time.

12. The method of claim 10 wherein the parameters further include geographic locations of the load server instances and the result server instances.

13. The method of claim 1 wherein the parameters further include an allocation block size.

14. The method of claim 1 wherein the parameters further include a time that a server remains in a pending state before the program considers the server failed.

15. The method of claim 1 further comprising, saving meta data and parameters settings of the computing grid in a specified storage location on the first computing device.

16. The method of claim 9 further comprising automatic monitoring of the computing grid during execution of the load test composition.

17. The method of claim 1 wherein the parameters further include an allocation failure retry count that indicates a number of times to try to boot one or more of the load or result server instances.

18. A non-transitory machine-readable storage medium encoded with a computer program product for provisioning a grid used to run a load test composition on a target website, web-based application or web services application programming interface (API), when executed the computer program product being operable to:

provide a user interface that allows a user to specify parameters of a computing grid for use in running the load test composition, the parameters including a first number of load server instances and a second number of result server instances; and

automatically provision the computing grid by interacting with an API of one or more cloud providers to allocate the first number of load server instances and the second number of results server instances, and to deploy software that runs on the load server instances and the result server instances needed to execute the load test composition.

19. The non-transitory machine-readable storage medium of claim 18 wherein the automatic provisioning of the computer grid occurs in parallel or in sequence, as required by the API of the one or more cloud providers.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2019
From: BRODA, TAL; SOLNIT, MATTHEW; GARDNER, KENNETH C.; POWERS, CRAIG R.; HEMMERT, MICHAEL; VAZAC, CHARLES A.; COSBY, KENDALL
To: SOASTA, INC.
Reel/Frame 048107/0546 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 15338002 RECORDED ON PREVIOUSLY RECORDED ON REEL 044798 FRAME 0558. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR (S) HEREBY CONFIRMS THE MERGER. Recorded Apr 2, 2018
From: SOASTA INC.
To: AKAMAI TECHNOLOGIES, INC.
Reel/Frame 046110/0306 →
MERGER Recorded Feb 1, 2018
From: SOASTA, INC.
To: AKAMAI TECHNOLOGIES, INC.
Reel/Frame 044798/0558 →
Continuity (2)
Continuation 12804317 · Jul 19, 2010
Related Publication 20130111257A1 · May 2, 2013