Claims
- 1. A method in a computing system for adapting a representation of a real workload, comprising:
retrieving a stored representation of a real workload, the representation of a real workload containing data describing requests received by one or more applications executing in a first N-tiered computing system during a recording period; selecting a second N-tiered computing system on which the real workload is to be replayed, the second N-tiered computing system having a state; and modifying the retrieved real workload representation to adapt the retrieved real workload representation to the state of the second N-tiered computing system and enable the modified real workload representation to be played back on the second N-tiered computing system in such a manner that requests are presented during the playback in correct order and with correct timing, and in a manner that emulates the performance characteristics of the first N-tiered computing system on the second N-tiered computing system.
- 2. The method of claim 1, further comprising playing back the modified real workload representation on the second N-tiered computing system.
- 3. The method of claim 1 wherein the first and second N-tiered computing systems are different N-tiered computing systems.
- 4. The method of claim 1 wherein the first and second N-tiered computing systems are the same N-tiered computing systems at different times.
- 5. The method of claim 1 wherein the data contained by the stored representation of the real workload includes parameters received with one or more of the described requests, and wherein the modifying constitutes changing the value of one or more such parameters to adapt the real workload representation to the state of the second N-tiered computing system.
- 6. The method of claim 1 wherein the data contained by the stored representation of the real workload includes parameters received with one or more of the described requests, and wherein the modifying constitutes attaching a flag to one or more such parameters to facilitate subsequent changes to the values of the flagged parameters to adapt the real workload representation to the state of the second N-tiered computing system.
- 7. The method of claim 6, further comprising, for each of the parameters to which a flag has been attached, changing the value of the parameter to adapt the real workload representation to the state of the second N-tiered computing system.
- 8. The method of claim 7, further comprising playing back the modified real workload representation on the second N-tiered computing system, and wherein, for at least for at least one of the parameters to which a flag has been attached, the value of the parameter is changed before playback commences.
- 9. The method of claim 7, further comprising playing back the modified real workload representation on the second N-tiered computing system, and wherein, for at least for at least one of the parameters to which a flag has been attached, the value of the parameter is changed at a time between the time at which playback begins and the time during playback at which the request with which the parameter was received is presented.
- 10. The method of claim 7, further comprising playing back the modified real workload representation on the second N-tiered computing system, and wherein, for at least for at least one of the parameters to which a flag has been attached, the value of the parameter is changed before playback commences,
and wherein, for at least for at least one of the parameters to which a flag has been attached, the value of the parameter is changed at a time between the time at which playback begins and the time during playback at which the request with which the parameter was received is presented.
- 11. The method of claim 1, further comprising identifying requests described by the data contained in the retrieved real workload representation that are incompatible with the state of the second N-tiered computing system, and wherein the modifying constitutes removing from the data contained in the retrieved real workload representation describing the identified requests.
- 12. The method of claim 11 wherein at least one of the identified requests was received on the first N-tiered computing system by an application that is not available on the second N-tiered computing system.
- 13. The method of claim 11 wherein at least one of the identified requests was received on the first N-tiered computing system by a version of a selected application that is not available on the second N-tiered computing system.
- 14. The method of claim 11 wherein at least one of the identified requests was received on the first N-tiered computing system by a selected application that was configured in a manner different from the manner in which the selected application is configured on the second N-tiered computing system.
- 15. A computer-readable medium whose contents cause a computing system to adapt a representation of a real workload by:
retrieving a stored representation of a real workload, the representation of a real workload containing data describing requests received by one or more applications executing in a first N-tiered computing system during a recording period; selecting a second N-tiered computing system on which the real workload is to be replayed, the second N-tiered computing system having a state; and modifying the retrieved real workload representation to adapt the retrieved real workload representation to the state of the second N-tiered computing system and enable the modified real workload representation to be played back on the second N-tiered computing system in such a manner that requests are presented during the playback in correct order and with correct timing, and in a manner that emulates the performance characteristics of the first N-tiered computing system on the second N-tiered computing system.
- 16. A computing system for adapting a representation of a real workload, comprising:
a storage device from which is retrieved a stored representation of a real workload, the representation of a real workload containing data describing requests received by one or more applications executing in a first N-tiered computing system during a recording period; a replay system selection subsystem that selects a second N-tiered computing system on which the real workload is to be replayed, the second N-tiered computing system having a state; and a modification subsystem that modifies the real workload representation retrieved from the storage device to adapt the retrieved real workload representation to the state of the second N-tiered computing system and enable the modified real workload representation to be played back on the second N-tiered computing system in such a manner that requests are presented during the playback in correct order and with correct timing, and in a manner that emulates the performance characteristics of the first N-tiered computing system on the second N-tiered computing system.
- 17. A method in a computing system for adapting a representation of a real workload, comprising:
retrieving a stored representation of a real workload produced on a source N-tiered computing system specifying a plurality of requests received by one or more applications executing on the source N-tiered computing system; selecting a performance characteristic to be produced by playing back the real workload represented by the retrieved representation on a target N-tiered computing system; and modifying one or more aspects of the retrieved real workload representation to adapt the real workload representation to produce the selected performance characteristic when the modified real workload representation is played back on the target N-tiered computing system.
- 18. The method of claim 17 wherein the requests specified by the retrieved real workload representation have ordering and timing characteristics, and wherein modifying one or more aspects of the retrieved real workload representation comprises adjusting the ordering and timing characteristics of the requests specified by the retrieved real workload representation.
- 19. The method of claim 17 wherein the requests specified by the retrieved real workload representation have ordering and timing characteristics, and wherein a plurality of user sessions is identified in the retrieved real workload representation,
and wherein modifying one or more aspects of the retrieved real workload representation comprises:
adjusting the number of user sessions identified in the retrieved real workload representation, and adjusting the ordering and timing characteristics of the requests specified by the retrieved real workload representation within each user session identified in the retrieved real workload representation.
- 20. The method of claim 17 wherein the selected performance characteristic is a target level of throughput to be produced by playing back the real workload represented by the retrieved representation on the target N-tiered computing system.
- 21. The method of claim 17 wherein the selected performance characteristic is a target request arrival rate to be produced by playing back the real workload represented by the retrieved representation on the target N-tiered computing system.
- 22. The method of claim 17 wherein the selected performance characteristic is a target processing load level to be produced on the target N-tiered computing system by playing back the real workload represented by the retrieved representation on the target N-tiered computing system.
- 23. The method of claim 17 wherein the selected performance characteristic is a target level of request concurrency to be produced by playing back the real workload represented by the retrieved representation on the target N-tiered computing system.
- 24. A computer-readable medium whose contents cause a computing system to adapt a representation of a real workload by:
retrieving a stored representation of a real workload produced on a source N-tiered computing system specifying a plurality of requests received by one or more applications executing on the source N-tiered computing system; selecting a performance characteristic to be produced by playing back the real workload represented by the retrieved representation on a target N-tiered computing system; and modifying one or more aspects of the retrieved real workload representation to adapt the real workload representation to produce the selected performance characteristic when the modified real workload representation is played back on the target N-tiered computing system.
- 25. A computing system for adapting a representation of a real workload, comprising:
a storage device from which is retrieved a stored representation of a real workload produced on a source N-tiered computing system specifying a plurality of requests received by one or more applications executing on the source N-tiered computing system; a performance characteristic selection subsystem that selects a performance characteristic to be produced by playing back the real workload represented by the retrieved representation on a target N-tiered computing system; and a modification subsystem that modifies one or more aspects of the retrieved real workload representation to adapt the real workload representation to produce the selected performance characteristic when the modified real workload representation is played back on the target N-tiered computing system.
- 26. A method in a computing system for adapting a representation of a real workload, comprising:
retrieving a first representation of a real workload produced on a first N-tiered computing system specifying a plurality of requests received by one or more applications executing on the first N-tiered computing system; and partitioning the first representation of a real workload into two or more second representations of real workloads by distributing the requests specified by the representation of a real workload across the second representations of real workloads.
- 27. The method of claim 26, further comprising receiving a user specification specifying how the partitioning is to be performed, and wherein the partitioning is performed in accordance with the received user specification.
- 28. The method of claim 26, further comprising playing back one of the second representations of real workloads on a second N-tiered computing system that is less powerful than the first N-tiered computing system.
- 29. A computing system for adapting a representation of a real workload, comprising:
a storage device from which is retrieved a first representation of a real workload produced on a first N-tiered computing system specifying a plurality of requests received by one or more applications executing on the first N-tiered computing system; and a partitioning subsystem that partitions the first representation of a real workload into two or more second representations of real workloads by distributing the requests specified by the representation of a real workload across the second representations of real workloads.
- 30. A method in a computing system for adapting a representation of real workloads, comprising:
retrieving two or more first representations of real workloads produced on one or more first N-tiered computing system, each of the first representations of real workloads specifying a plurality of requests received by one or more applications executing on one of the first N-tiered computing systems; and combining the first representations of real workloads into a single second representation of a real workload by aggregating the requests specified by each of first representations of real workloads.
- 31. The method of claim 30, further comprising receiving a user specification specifying how the combining is to be performed,
and wherein the combining is performed in accordance with the received user specification.
- 32. The method of claim 30, further comprising playing back the second representation of a real workload on a second N-tiered computing system that is more powerful than the first N-tiered computing systems.
- 33. A computer-readable medium whose contents cause a computing system to adapt a representation of real workloads by:
retrieving two or more first representations of real workloads produced on one or more first N-tiered computing system, each of the first representations of real workloads specifying a plurality of requests received by one or more applications executing on one of the first N-tiered computing systems; and combining the first representations of real workloads into a single second representation of a real workload by aggregating the requests specified by each of first representations of real workloads.
- 34. A method in a computing system for adapting a representation of a real workload, comprising:
retrieving a stored representation of a real workload, the representation of a real workload containing data describing requests received by one or more applications executing in a first N-tiered computing system during a recording period, the representation of a real workload further identifying an order in which the requests were received during the recording period; for a particular resource, identifying requests among the described requests that depend on the presence in memory of the resource; and adding to the stored representation of a real workload an indication to unload the resource from memory after the last of the identified requests has been presented and processed.
- 35. A computing system for adapting a representation of a real workload, comprising:
a storage device from which is retrieved a stored representation of a real workload, the representation of a real workload containing data describing requests received by one or more applications executing in a first N-tiered computing system during a recording period, the representation of a real workload further identifying an order in which the requests were received during the recording period; a request identification subsystem that identifies, for a particular resource, requests among the described requests that depend on the presence in memory of the resource; and an indication addition subsystem that adds to the stored representation of a real workload an indication to unload the resource from memory after the last of the identified requests has been presented and processed.
- 36. A method in a computing system for adapting a representation of a real workload, comprising:
retrieving a representation of a real workload produced on a first N-tiered computing system containing data specifying a plurality of requests received by one or more applications executing on the first N-tiered computing system, the data further specifying, for at least a portion of the requests, attribute of the request including a distinguished attribute; modifying the retrieved representation by, for at least a portion of the requests for which the distinguished attribute is specified, modifying the distinguished attribute; and storing the modified representation.
- 37. The method of claim 36, further comprising using the stored representation to play back the real workload represented by the representation.
- 38. The method of claim 36 wherein the distinguished attribute is modified by redacting the value of the distinguished attribute.
- 39. The method of claim 36 wherein the distinguished attribute is modified by parameterizing the distinguished attribute.
- 40. The method of claim 39 wherein the distinguished attribute is a cookie.
- 41. The method of claim 39 wherein the distinguished attribute is a connection.
- 42. The method of claim 39 wherein the distinguished attribute is a thread.
- 43. The method of claim 39 wherein the distinguished attribute is a argument.
- 44. The method of claim 39 wherein the distinguished attribute is a parameter.
- 45. The method of claim 39 wherein the distinguished attribute is a time.
- 46. The method of claim 39 wherein the distinguished attribute is a request identifier.
- 47. A computer-readable medium whose contents cause a computing system to adapt a representation of a real workload by:
retrieving a representation of a real workload produced on a first N-tiered computing system containing data specifying a plurality of requests received by one or more applications executing on the first N-tiered computing system, the data further specifying, for at least a portion of the requests, attribute of the request including a distinguished attribute; modifying the retrieved representation by, for at least a portion of the requests for which the distinguished attribute is specified, modifying the distinguished attribute; and storing the modified representation.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 60/358,989, entitled “REAL-WORKLOAD CAPTURE AND REPLAY TECHNOLOGY FOR ACCURATE LOAD AND PERFORMANCE TESTING,” filed on Feb. 21, 2002 and U.S. Provisional Application No. 60/417,021, entitled “REAL WORKLOAD PERFORMANCE ANALYSIS,” filed on Oct. 7, 2002 and is related to U.S. patent application Ser. No. ______, entitled “WORKLOAD PLAYBACK FOR A SYSTEM FOR PERFORMANCE TESTING OF N-TIERED COMPUTER SYSTEMS USING RECORDING AND PLAYBACK OF WORKLOADS,” filed concurrently herewith (Attorney Docket No. 360058004US) and U.S. patent application Ser. No. ______, entitled “INSTRUMENTATION AND WORKLOAD RECORDING FOR A SYSTEM FOR PERFORMANCE TESTING OF N-TIERED COMPUTER SYSTEMS USING RECORDING AND PLAYBACK OF WORKLOADS,” filed concurrently herewith (Attorney Docket No. 360058003US), all four of which applications are incorporated herein by reference in their entirety.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60358989 |
Feb 2002 |
US |
|
60417021 |
Oct 2002 |
US |