US7403886B2 - Load stimulation tool for server resource capacity planning - Google Patents
Load stimulation tool for server resource capacity planning Download PDFInfo
- Publication number
- US7403886B2 US7403886B2 US10/999,308 US99930804A US7403886B2 US 7403886 B2 US7403886 B2 US 7403886B2 US 99930804 A US99930804 A US 99930804A US 7403886 B2 US7403886 B2 US 7403886B2
- Authority
- US
- United States
- Prior art keywords
- server
- load
- utilization
- server cluster
- cluster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related, expires
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3414—Workload generation, e.g. scripts, playback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3442—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3457—Performance evaluation by simulation
Definitions
- This invention relates to server systems, and more particularly to systems and methods for server resource capacity planning in server systems.
- Capacity planning is forward-looking resource management that allows a computer system administrator to plan for expected changes of system resource utilization and make changes to the system to adequately handle such changes.
- Server performance and capacity planning is a top concern of computer administrators and business managers. If a lack of proactive and continuous capacity planning procedure leads to unexpected unavailability and performance problems, the downtime that results can be financially devastating to a company that depends heavily on server performance, such as an Internet-based merchant.
- Capacity planning requires both scientific and intuitive knowledge of a server system. It requires in-depth knowledge of the resource being provided and an adequate understanding of future server traffic. The difficulty of the problem has increased by technology in which multiple servers, or server clusters, are employed to handle a network or an Internet website.
- a method and system for providing capacity planning of server resources is described herein.
- the methods and systems contemplate using measured data, extrapolation, and a load simulation tool to provide capacity planning results that are more accurate than current schemes.
- the load simulation tool and its implementation are also described.
- Server resources for which utilization is calculated are processor utilization, communication bandwidth utilization, memory utilization, and general server utilization.
- Utilization is expressed in terms of actual use of the resource in relation to the total amount of resource available for use. For example, processor utilization is expressed as a percentage of procession power utilized for a given load in relation to the total processing power available. Communication bandwidth utilization is expressed as a percentage of an average server throughput per bytes per second in relation to the total communication bandwidth available. Memory utilization is expressed as a percentage of memory required per request times the length of a request queue in relation to the total memory available.
- General server utilization is expressed as a ratio between a current service rate (number of requests per second served) and the maximum possible service rate (maximum number of requests the server is capable of serving). This is less specific than showing the processor, bandwidth, and memory utilization, but it is useful for viewing resource constraints that do not fall under the other three categories.
- the implementation described herein derives the maximum load of a server cluster by collecting actual server parameter values during operation of the server system. This is accomplished through the use of a filter, such as an Internet Server Application Program Interface (ISAPI) filter, that collects actual server traffic information as data is transmitted to and from the server cluster.
- ISAPI Internet Server Application Program Interface
- a monitor on each server in the server cluster collects other server parameter values that are used in subsequent calculations.
- a system user selects a client computer from which to run a load simulation tool.
- the load simulation tool replays the data that has been collected from the server cluster, such as the actual requests made to the server, the time intervals at which requests were made, etc.
- the load simulation tool is then used to increase the load on the system until a maximum service rate that the system can support is found.
- the number of users from the actual recorded data can be multiplied. to simulate a greater number of users, which will increase the load on the system.
- Another way is to decrease the amount of time between requests, as recorded by the system, which will increase the load on the system. As the load increases, a service rate is monitored. When a further increase in the load does not increase the service rate, the load on the system at that point is considered to be the maximum service rate that can be delivered by the server.
- the maximum load value is used in subsequent calculations to determine server resource utilization estimates for any number of hypothetical situations. For instance, a user can enter information regarding a particular load that the user wants the current system to handle. The described implementation provides that user with estimates as to the utilization that the specified load will cause for the processor, the memory, the communications bandwidth, and the server in general. Also, the user may want to see how adding or removing a server from a current system will affect the utilization of these server resources. This situation can be adequately determined using the implementation described herein.
- the system provides a plan that recommends any changes in configuration, if any, that should be made to the system to optimize system performance. These recommendations are stored for each test result, thereby enabling the user to run several tests, and contrast and compare results and recommendations for different situations that the user may expect in the future. The user is thus enabled to adequately plan for future situations.
- FIG. 1 is an illustration of a prior art server-client system having a server cluster that supports a website on the Internet.
- FIG. 2 is a high-level block diagram of a server cluster having a stress simulation tool for capacity planning.
- FIG. 3 is a screen shot of a capacity planning worksheet utilized in a capacity planning process using a stress simulation tool.
- FIG. 4 is a graph of load vs. processor utilization for a calibrated method of capacity planning.
- FIG. 1 shows a typical Internet-based server-client system 100 .
- the system 100 includes several clients 104 a , 104 b , 104 c , 104 d connected to the Internet 102 .
- a website 106 runs on a server cluster 108 comprised of three servers 110 a , 11 b , 110 c .
- the server-client system 100 is shown operating within an Internet website context, it is noted that the server-client system may operate in any server-client network context, such as a local area network (LAN) or a wide area network (WAN).
- LAN local area network
- WAN wide area network
- FIG. 2 depicts a server cluster 200 in accordance with the described implementations.
- the server cluster 200 comprises a primary server 202 having a processor 204 and a monitor 205 , a first secondary server 206 having a processor 208 and a monitor 209 , and a second secondary processor 210 having a processor 212 and a monitor 213 .
- the monitors are software devices that collect server parameter values while the server cluster 200 is in operation.
- the server cluster 200 communicates with a master client 214 via a communications connection 216 . It is noted that several clients (not shown may be connected to the server cluster 200 . However, only one client is selected by the user to be the master client 214 .
- the master client 214 includes a simulation test program 217 . The function of the master client 214 and the simulation test program 217 will be discussed in greater detail below.
- the primary server 202 also includes a memory 218 and runs an operating system 220 .
- the operating system 220 provides resource management for primary server 202 resources.
- the memory 218 of the primary server 202 includes a cluster controller 222 , which controls communications between the primary server 202 and the secondary servers 206 , 210 and between the server cluster 200 and the network 214 . To accomplish this, the cluster controller 222 is provided with a communications program 224 .
- a capacity planner 226 is included in the cluster controller 222 .
- the function of the capacity planner 226 and its components will be described in greater detail below.
- the capacity planner 226 comprises benchmark data 228 in which data collected from the server cluster 200 is stored, a calculation module 230 which stores the equations necessary to derive server resource utilization estimates, and plans 232 which stores recommendations that may be made to improve operational configuration of the server cluster.
- This file of recommendations is pre-defined by the manufacturer to list all the possible recommendations developed for the server cluster 200 .
- plans 232 may be updated via a version upgrade or through a connection to the Internet.
- the capacity planner 226 includes a user interface 234 and an ISAPI filter 236 .
- the user interface 234 provides areas wherein a user of the server cluster 200 in general and, more specifically, the capacity planner 222 can enter server parameter values and/or a specified load for which the user wants to see server resource utilization and recommendations.
- the ISAPI filter 236 is used to collect actual server parameter values from the server cluster 200 while the server cluster 200 is operating. It is noted that the filter need not be an ISAPI filter, but can be any type of filter capable of performing the functions listed herein.
- the capacity planner 222 includes a load simulation tool 238 which is used to construct simulation scripts—such as the simulation test program 217 —that, when run on the master client 214 , simulates, plays or replays a server load scenario using actual operating conditions recorded from the server cluster 200 .
- the use of the load simulation tool 238 is described in further detail below.
- the server resources that are discussed herein are: (1) processor utilization (also referred to as CPU utilization), wherein the processor utilization for a given load is expressed as a percentage of total processing power available; (2) memory utilization, expressed as a percentage of total memory available is determined by multiplying the memory required for each request by the number of requests; (3) communication bandwidth utilization, expressed as a percentage of the average throughput per bytes per second in relation to the total communication bandwidth available; and (4) general server utilization, expressed as a ratio between a current service rate (number of requests per second served) and the maximum possible service rate (maximum number of requests the server is capable of serving).
- the general server utilization is less specific than showing the processor, bandwidth, and memory utilization, but it is useful for viewing resource constraints that do not fall under the other categories.
- FIG. 3 shows a screen shot of a user interface 300 for a capacity planning worksheet, wherein the user enters the specified load, for which the user desires to observe the effects on the system of handling such a load.
- the user is required to manually enter several server parameter values.
- server parameter values include: number of servers in the server cluster, available communications bandwidth, server name on which a simulation will be run, client name of the client that will serve as the master test client and execute a simulation script, and the name of the script that will be used to run the simulation.
- the user notifies the server cluster 200 to begin collecting data.
- the monitors 205 , 209 , 213 collect data from each server 202 , 206 , 210 .
- the ISAPI filter 236 collects data for other server parameters, namely for communications-related parameters such as number of incoming requests and average response time.
- the server resource utilization calculations require knowledge of the maximum load that the server cluster 200 can, theoretically, handle.
- the implementation described herein is more accurate in deriving the maximum load than any other method described to date.
- the simulation is run on only one server, selected by a user via the user interface 300 . It is assumed that the primary server 202 , and the secondary servers 206 , 210 are identical. Once the simulation data is derived on one server, the final figures are extrapolated for the total amount of servers in the server cluster. This provides the user with the server resource utilization figures.
- the simulation script can be run on each individual server and then the individual results can be summed to provide the final totals.
- servers 202 , 206 , 210 are identical.
- the user is provided with means to increase the test load on the server to run the script. All the other parameters are the same, so increasing the load will, necessarily, increase the utilization of the server resources.
- FIG. 4 shows a graph of a load vs. utilization curve 500 .
- processor utilization is used, though it will be apparent that a similar graph could be constructed for any of the server resource utilization estimates.
- the utilization curve 500 reaches a point 504 which can be considered to be the maximum load that can be handled by the server 202 .
- the user is may increase the load via the user interface 300 , and re-run the script using the higher load value.
- a situation will arise in which an increase in the load will not result in an increase of the rate at which the load is handled. This is the maximum load 502 which the server can handle.
- the load (L) at this point is used in the resource utilization estimate calculations below.
- X maximum load that can be handled by the server cluster 200 .
- Processor utilization is derived by solving:
- U CPU is processor utilization
- L is the specified load
- a and b are processor regression constants derived from applying linear regression methodology to several load/utilization (x,y) pairs measured during the test.
- U B is communication bandwidth utilization
- F TCP is a transmission overhead factor that, when applied to a certain size page, results in the actual bandwidth necessary to transmit the page;
- L is the specified load
- c and d are bandwidth regression constants derived from applying linear regression methodology to several load/utilization (x,y) pairs measured during the test.
- the memory utilization is derived by first solving the following equation to determine the number of concurrent connections:
- N L ( X - L ) + S1 ⁇ L
- N is the number of concurrent connections
- L is the specified load
- X is the maximum load that can be handled by the server cluster 200 ;
- connection memory factor that is the adjusted average of the incoming connections at different speeds. For example, suppose that the ISAPI filter 236 has measured the following percentages for connection types:
- the memory utilization is thus derived by solving:
- U M is memory utilization
- N is the number of concurrent connections
- M TCP is an amount of memory for TCP buffers (32 KB per connection);
- M IIS is the amount of memory required by a server communication program (50 MB for IIS);
- M IISStruct is the amount of memory necessary to support communications program data structures associated with each connection (50 KB per connection for IIS);
- M OS is the amount of memory required by a server operating system (64 MB for Windows® NT by the Microsoft Corporation of Redmond, Wash.) and
- M is the amount of total memory available.
- the described implementations advantageously provide for capacity planning for a server-client system and, particularly, to a server cluster within a server-client system.
- the load simulation tool is an extremely accurate tool for determining the maximum load handled by a server. The maximum load can then be substituted into the server resource estimate equations to give accurate server resource utilization results.
Abstract
Description
Claims (37)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/999,308 US7403886B2 (en) | 2000-05-23 | 2004-11-30 | Load stimulation tool for server resource capacity planning |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/577,118 US6898564B1 (en) | 2000-05-23 | 2000-05-23 | Load simulation tool for server resource capacity planning |
US10/999,308 US7403886B2 (en) | 2000-05-23 | 2004-11-30 | Load stimulation tool for server resource capacity planning |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/577,118 Continuation US6898564B1 (en) | 2000-05-23 | 2000-05-23 | Load simulation tool for server resource capacity planning |
Publications (2)
Publication Number | Publication Date |
---|---|
US20050102318A1 US20050102318A1 (en) | 2005-05-12 |
US7403886B2 true US7403886B2 (en) | 2008-07-22 |
Family
ID=34549637
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/577,118 Expired - Fee Related US6898564B1 (en) | 2000-05-23 | 2000-05-23 | Load simulation tool for server resource capacity planning |
US10/999,308 Expired - Fee Related US7403886B2 (en) | 2000-05-23 | 2004-11-30 | Load stimulation tool for server resource capacity planning |
US10/999,551 Expired - Fee Related US7610186B2 (en) | 2000-05-23 | 2004-11-30 | Load simulation tool for server resource capacity planning |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/577,118 Expired - Fee Related US6898564B1 (en) | 2000-05-23 | 2000-05-23 | Load simulation tool for server resource capacity planning |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/999,551 Expired - Fee Related US7610186B2 (en) | 2000-05-23 | 2004-11-30 | Load simulation tool for server resource capacity planning |
Country Status (1)
Country | Link |
---|---|
US (3) | US6898564B1 (en) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050102121A1 (en) * | 2000-05-23 | 2005-05-12 | Microsoft Corporation | Load simulation tool for server resource capacity planning |
US20060168069A1 (en) * | 2005-01-25 | 2006-07-27 | International Business Machines Corporation | Method, system and program product for performing message benchmarking |
US20070038039A1 (en) * | 2005-07-29 | 2007-02-15 | Siemens Aktiengesellschaft | Method and device for dynamically generating test scenarios for complex computer-controlled systems, e.g. for medical engineering installations |
US20070239766A1 (en) * | 2006-03-31 | 2007-10-11 | Microsoft Corporation | Dynamic software performance models |
US20100161548A1 (en) * | 2008-12-23 | 2010-06-24 | Cynthia Dolan | System and method for capacity planning in an information network |
US20100251253A1 (en) * | 2009-03-31 | 2010-09-30 | Microsoft Corporation | Priority-based management of system load level |
US20110107249A1 (en) * | 2009-10-30 | 2011-05-05 | Cynthia Dolan | Exception Engine For Capacity Planning |
US20120179446A1 (en) * | 2011-01-07 | 2012-07-12 | International Business Machines Corporation | Rapidly determining fragmentation in computing environments |
US20130332442A1 (en) * | 2012-06-06 | 2013-12-12 | Microsoft Corporation | Deep application crawling |
US10230613B2 (en) | 2013-03-22 | 2019-03-12 | Naver Business Platform Corp. | Test system for reducing performance test cost in cloud environment and test method therefor |
US10574758B2 (en) | 2017-07-28 | 2020-02-25 | International Business Machines Corporation | Server connection capacity management |
US11108685B2 (en) | 2019-06-27 | 2021-08-31 | Bank Of America Corporation | Intelligent delivery of data packets within a network transmission path based on time intervals |
US11526784B2 (en) | 2020-03-12 | 2022-12-13 | Bank Of America Corporation | Real-time server capacity optimization tool using maximum predicted value of resource utilization determined based on historica data and confidence interval |
US11553047B2 (en) | 2018-11-30 | 2023-01-10 | International Business Machines Corporation | Dynamic connection capacity management |
Families Citing this family (100)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6823380B1 (en) * | 2000-08-07 | 2004-11-23 | Microsoft Corporation | System and method providing continual rate requests |
US7698710B1 (en) * | 2000-10-19 | 2010-04-13 | International Business Machines Corporation | System and method to improve service in a group of servers |
US6965854B2 (en) * | 2001-07-23 | 2005-11-15 | International Business Machines Corporation | Methods, systems and computer program products for screening simulated traffic for randomness |
US7203719B2 (en) * | 2001-08-22 | 2007-04-10 | International Business Machines Corporation | Method and system to measure distributed system's relative size |
US7313635B1 (en) * | 2002-03-21 | 2007-12-25 | Cisco Technology | Method and apparatus for simulating a load on an application server in a network |
US7107327B2 (en) * | 2002-04-26 | 2006-09-12 | Sun Microsystems, Inc. | Method and apparatus for determining a server configuration based on an execution profile of an application |
US6925467B2 (en) * | 2002-05-13 | 2005-08-02 | Innopath Software, Inc. | Byte-level file differencing and updating algorithms |
US7096311B2 (en) | 2002-09-30 | 2006-08-22 | Innopath Software, Inc. | Updating electronic files using byte-level file differencing and updating algorithms |
US6836657B2 (en) * | 2002-11-12 | 2004-12-28 | Innopath Software, Inc. | Upgrading of electronic files including automatic recovery from failures and errors occurring during the upgrade |
US7953779B1 (en) | 2002-10-08 | 2011-05-31 | Trilogy Development Group, Inc. | Configuration representation and modeling using configuration spaces |
US7844734B2 (en) * | 2002-11-18 | 2010-11-30 | Innopath Software, Inc. | Dynamic addressing (DA) using a centralized DA manager |
US7007049B2 (en) * | 2002-11-18 | 2006-02-28 | Innopath Software, Inc. | Device memory management during electronic file updating |
US7320010B2 (en) | 2002-11-18 | 2008-01-15 | Innopath Software, Inc. | Controlling updates of electronic files |
US20040098361A1 (en) * | 2002-11-18 | 2004-05-20 | Luosheng Peng | Managing electronic file updates on client devices |
US7003534B2 (en) * | 2002-11-18 | 2006-02-21 | Innopath Software, Inc. | Generating difference files using module information of embedded software components |
US20040098421A1 (en) * | 2002-11-18 | 2004-05-20 | Luosheng Peng | Scheduling updates of electronic files |
US7433366B1 (en) * | 2003-05-16 | 2008-10-07 | Cisco Technology, Inc. | Offered load fairness in a stack |
US7031972B2 (en) | 2003-07-21 | 2006-04-18 | Innopath Software, Inc. | Algorithms for block-level code alignment of software binary files |
CN1973262B (en) * | 2003-10-23 | 2012-08-22 | 创道软件有限公司 | Dynamic addressing (DA) using a centralized DA manager |
US7107187B1 (en) * | 2003-11-12 | 2006-09-12 | Sprint Communications Company L.P. | Method for modeling system performance |
US7630862B2 (en) * | 2004-03-26 | 2009-12-08 | Microsoft Corporation | Load test simulator |
US8838794B2 (en) * | 2004-06-30 | 2014-09-16 | International Business Machines Corporation | Method, system and program product for simulating activity in a server environment |
US7516451B2 (en) | 2004-08-31 | 2009-04-07 | Innopath Software, Inc. | Maintaining mobile device electronic files including using difference files when upgrading |
US7536290B1 (en) * | 2004-09-30 | 2009-05-19 | Silicon Valley Bank | Model-based management of an existing information processing system |
US8639796B2 (en) * | 2004-12-16 | 2014-01-28 | Hewlett-Packard Development Company, L.P. | Monitoring the performance of a streaming media server using server-side and client-side measurements |
US7383516B2 (en) * | 2005-04-13 | 2008-06-03 | Microsoft Corporation | Systems and methods for displaying and editing hierarchical data |
US7383161B2 (en) | 2005-04-13 | 2008-06-03 | Microsoft Corporation | Systems and methods for device simulation |
US7552036B2 (en) | 2005-04-15 | 2009-06-23 | Microsoft Corporation | Preconditioning for stochastic simulation of computer system performance |
US7979520B2 (en) * | 2005-04-15 | 2011-07-12 | Microsoft Corporation | Prescriptive architecture recommendations |
US7689616B2 (en) * | 2005-04-15 | 2010-03-30 | Microsoft Corporation | Techniques for specifying and collecting data aggregations |
US7398191B1 (en) * | 2005-04-20 | 2008-07-08 | Sun Microsystems, Inc. | Method and apparatus for computing a distance metric between computer system workloads |
US7805496B2 (en) * | 2005-05-10 | 2010-09-28 | International Business Machines Corporation | Automatic generation of hybrid performance models |
EP1949317A1 (en) * | 2005-10-24 | 2008-07-30 | Accenture Global Services GmbH | Dynamic server consolidation and configuration |
US7685283B2 (en) * | 2006-01-23 | 2010-03-23 | International Business Machiens Corporation | Method for modeling on-demand free pool of resources |
US8260924B2 (en) * | 2006-05-03 | 2012-09-04 | Bluetie, Inc. | User load balancing systems and methods thereof |
US8056082B2 (en) * | 2006-05-31 | 2011-11-08 | Bluetie, Inc. | Capacity management and predictive planning systems based on trended rate change of monitored factors and methods thereof |
US7657401B2 (en) * | 2006-05-31 | 2010-02-02 | International Business Machines Corporation | Systems and methods for predicting load test resource requirements |
US9990110B1 (en) | 2006-08-14 | 2018-06-05 | Akamai Technologies, Inc. | Private device cloud for global testing of mobile applications |
US9720569B2 (en) | 2006-08-14 | 2017-08-01 | Soasta, Inc. | Cloud-based custom metric/timer definitions and real-time analytics of mobile applications |
US9154611B1 (en) | 2006-08-14 | 2015-10-06 | Soasta, Inc. | Functional test automation for gesture-based mobile applications |
US7984139B2 (en) | 2006-12-22 | 2011-07-19 | Business Objects Software Limited | Apparatus and method for automating server optimization |
US9135075B2 (en) * | 2007-03-09 | 2015-09-15 | Hewlett-Packard Development Company, L.P. | Capacity planning for computing systems hosting multi-tier application based on think time value and resource cost of composite transaction using statistical regression analysis |
US8326669B2 (en) | 2007-04-19 | 2012-12-04 | International Business Machines Corporation | System and method for selecting and scheduling corrective actions for automated storage management |
US8046767B2 (en) * | 2007-04-30 | 2011-10-25 | Hewlett-Packard Development Company, L.P. | Systems and methods for providing capacity management of resource pools for servicing workloads |
US8543711B2 (en) | 2007-04-30 | 2013-09-24 | Hewlett-Packard Development Company, L.P. | System and method for evaluating a pattern of resource demands of a workload |
US8918496B2 (en) | 2007-04-30 | 2014-12-23 | Hewlett-Packard Development Company, L.P. | System and method for generating synthetic workload traces |
US8631401B2 (en) * | 2007-07-24 | 2014-01-14 | Ca, Inc. | Capacity planning by transaction type |
US8856332B2 (en) * | 2007-10-09 | 2014-10-07 | International Business Machines Corporation | Integrated capacity and architecture design tool |
US8326970B2 (en) * | 2007-11-05 | 2012-12-04 | Hewlett-Packard Development Company, L.P. | System and method for modeling a session-based system with a transaction-based analytic model |
KR100962532B1 (en) * | 2007-12-18 | 2010-06-14 | 한국전자통신연구원 | System for load regenerating using packets of load test and its method |
US8261278B2 (en) * | 2008-02-01 | 2012-09-04 | Ca, Inc. | Automatic baselining of resource consumption for transactions |
JP5373295B2 (en) * | 2008-02-04 | 2013-12-18 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Multi-node server system, load balancing method, resource management server, and program |
US8402468B2 (en) * | 2008-03-17 | 2013-03-19 | Ca, Inc. | Capacity planning based on resource utilization as a function of workload |
US20100274947A1 (en) * | 2009-04-27 | 2010-10-28 | Hitachi, Ltd. | Memory management method, memory management program, and memory management device |
US9026640B2 (en) * | 2009-06-03 | 2015-05-05 | Microsoft Technology Licensing, Llc | Determining server utilization |
US9594656B2 (en) | 2009-10-26 | 2017-03-14 | Microsoft Technology Licensing, Llc | Analysis and visualization of application concurrency and processor resource utilization |
US9430353B2 (en) | 2009-10-26 | 2016-08-30 | Microsoft Technology Licensing, Llc | Analysis and visualization of concurrent thread execution on processor cores |
US8712950B2 (en) * | 2010-04-29 | 2014-04-29 | Microsoft Corporation | Resource capacity monitoring and reporting |
US20110282642A1 (en) * | 2010-05-15 | 2011-11-17 | Microsoft Corporation | Network emulation in manual and automated testing tools |
US8484340B2 (en) | 2010-06-14 | 2013-07-09 | Microsoft Corporation | Server array capacity management calculator |
US8341462B2 (en) * | 2010-07-19 | 2012-12-25 | Soasta, Inc. | System and method for provisioning and running a cross-cloud test grid |
US9436579B2 (en) | 2010-07-19 | 2016-09-06 | Soasta, Inc. | Real-time, multi-tier load test results aggregation |
US9229842B2 (en) | 2010-07-19 | 2016-01-05 | Soasta, Inc. | Active waterfall charts for continuous, real-time visualization of website performance data |
US9495473B2 (en) | 2010-07-19 | 2016-11-15 | Soasta, Inc. | Analytic dashboard with user interface for producing a single chart statistical correlation from source and target charts during a load test |
US9021362B2 (en) | 2010-07-19 | 2015-04-28 | Soasta, Inc. | Real-time analytics of web performance using actual user measurements |
US9251035B1 (en) | 2010-07-19 | 2016-02-02 | Soasta, Inc. | Load test charts with standard deviation and percentile statistics |
US8990551B2 (en) | 2010-09-16 | 2015-03-24 | Microsoft Technology Licensing, Llc | Analysis and visualization of cluster resource utilization |
CN102622303B (en) * | 2011-01-30 | 2016-02-17 | 国际商业机器公司 | A kind of method of internal memory premature beats and device |
DE102011079429A1 (en) * | 2011-07-19 | 2013-01-24 | Siemens Aktiengesellschaft | Performance simulation of medical procedures in a client-server environment |
CN103959242A (en) * | 2011-10-10 | 2014-07-30 | 惠普发展公司,有限责任合伙企业 | Methods and systems for planning execution of an application in a cloud computing system |
US9785533B2 (en) | 2011-10-18 | 2017-10-10 | Soasta, Inc. | Session template packages for automated load testing |
US9015832B1 (en) * | 2012-10-19 | 2015-04-21 | Google Inc. | Application auditing through object level code inspection |
JP6160064B2 (en) * | 2012-11-19 | 2017-07-12 | 富士通株式会社 | Application determination program, failure detection apparatus, and application determination method |
US9772923B2 (en) | 2013-03-14 | 2017-09-26 | Soasta, Inc. | Fast OLAP for real user measurement of website performance |
US11157664B2 (en) | 2013-07-09 | 2021-10-26 | Oracle International Corporation | Database modeling and analysis |
US9747311B2 (en) | 2013-07-09 | 2017-08-29 | Oracle International Corporation | Solution to generate a scriptset for an automated database migration |
US10776244B2 (en) | 2013-07-09 | 2020-09-15 | Oracle International Corporation | Consolidation planning services for systems migration |
US9762461B2 (en) | 2013-07-09 | 2017-09-12 | Oracle International Corporation | Cloud services performance tuning and benchmarking |
US9442983B2 (en) | 2013-07-09 | 2016-09-13 | Oracle International Corporation | Method and system for reducing instability when upgrading software |
US9996562B2 (en) | 2013-07-09 | 2018-06-12 | Oracle International Corporation | Automated database migration architecture |
US9792321B2 (en) | 2013-07-09 | 2017-10-17 | Oracle International Corporation | Online database migration |
US9967154B2 (en) | 2013-07-09 | 2018-05-08 | Oracle International Corporation | Advanced customer support services—advanced support cloud portal |
US9805070B2 (en) | 2013-07-09 | 2017-10-31 | Oracle International Corporation | Dynamic migration script management |
US10601674B2 (en) | 2014-02-04 | 2020-03-24 | Akamai Technologies, Inc. | Virtual user ramp controller for load test analytic dashboard |
JP5758534B1 (en) * | 2014-09-09 | 2015-08-05 | インテグラート株式会社 | Simulation system, simulation method, and simulation program |
CN104636197B (en) * | 2015-01-29 | 2017-12-19 | 东北大学 | A kind of evaluation method of data center's virtual machine (vm) migration scheduling strategy |
US10346431B1 (en) | 2015-04-16 | 2019-07-09 | Akamai Technologies, Inc. | System and method for automated run-tme scaling of cloud-based data store |
US20160328273A1 (en) * | 2015-05-05 | 2016-11-10 | Sap Se | Optimizing workloads in a workload placement system |
US10394971B2 (en) | 2015-06-04 | 2019-08-27 | International Business Machines Corporation | Hybrid simulation of a computing solution in a cloud computing environment with a simplified computing solution and a simulation model |
CN106708621B (en) * | 2015-11-16 | 2020-10-27 | 阿里巴巴集团控股有限公司 | Method and device for obtaining application cluster capacity |
US11036696B2 (en) | 2016-06-07 | 2021-06-15 | Oracle International Corporation | Resource allocation for database provisioning |
US10797941B2 (en) * | 2016-07-13 | 2020-10-06 | Cisco Technology, Inc. | Determining network element analytics and networking recommendations based thereon |
US10692031B2 (en) * | 2017-11-02 | 2020-06-23 | International Business Machines Corporation | Estimating software as a service cloud computing resource capacity requirements for a customer based on customer workflows and workloads |
US10873516B2 (en) * | 2018-05-25 | 2020-12-22 | Comcast Cable Communications, Llc | Content delivery network server testing |
CN109710401A (en) * | 2018-12-17 | 2019-05-03 | 国云科技股份有限公司 | A kind of cloud computing resources Cost Optimization Approach |
US11256671B2 (en) | 2019-09-13 | 2022-02-22 | Oracle International Corporation | Integrated transition control center |
US11429441B2 (en) * | 2019-11-18 | 2022-08-30 | Bank Of America Corporation | Workflow simulator |
US20210319151A1 (en) * | 2020-04-14 | 2021-10-14 | Citrix Systems, Inc. | Systems and Methods for Production Load Simulation |
US11546422B2 (en) | 2021-01-08 | 2023-01-03 | Capital One Services, Llc | Dynamic management of locations of modules of a platform hosted by a distributed system |
CN112835792B (en) * | 2021-01-27 | 2023-03-03 | 湖南快乐阳光互动娱乐传媒有限公司 | Pressure testing system and method |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5668995A (en) | 1994-04-22 | 1997-09-16 | Ncr Corporation | Method and apparatus for capacity planning for multiprocessor computer systems in client/server environments |
US5761091A (en) | 1996-12-10 | 1998-06-02 | Bgs Systems, Inc. | Method and system for reducing the errors in the measurements of resource usage in computer system processes and analyzing process data with subsystem data |
US5838919A (en) | 1996-09-10 | 1998-11-17 | Ganymede Software, Inc. | Methods, systems and computer program products for endpoint pair based communications network performance testing |
US5943244A (en) * | 1997-02-17 | 1999-08-24 | I2 Technologies, Inc. | System for optimizing a network plan and method of operation |
US5974572A (en) * | 1996-10-15 | 1999-10-26 | Mercury Interactive Corporation | Software system and methods for generating a load test using a server access log |
US6086618A (en) | 1998-01-26 | 2000-07-11 | Microsoft Corporation | Method and computer program product for estimating total resource usage requirements of a server application in a hypothetical user configuration |
US6108800A (en) | 1998-02-10 | 2000-08-22 | Hewlett-Packard Company | Method and apparatus for analyzing the performance of an information system |
US6209033B1 (en) | 1995-02-01 | 2001-03-27 | Cabletron Systems, Inc. | Apparatus and method for network capacity evaluation and planning |
US6301615B1 (en) | 1998-10-14 | 2001-10-09 | Sun Microsystems, Inc. | Cluster performance monitoring utility |
US6317778B1 (en) | 1998-11-23 | 2001-11-13 | International Business Machines Corporation | System and method for replacement and duplication of objects in a cache |
US6542854B2 (en) | 1999-04-30 | 2003-04-01 | Oracle Corporation | Method and mechanism for profiling a system |
US6574587B2 (en) | 1998-02-27 | 2003-06-03 | Mci Communications Corporation | System and method for extracting and forecasting computing resource data such as CPU consumption using autoregressive methodology |
US6898564B1 (en) * | 2000-05-23 | 2005-05-24 | Microsoft Corporation | Load simulation tool for server resource capacity planning |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5615323A (en) * | 1994-11-04 | 1997-03-25 | Concord Communications, Inc. | Displaying resource performance and utilization information |
DE19511252C1 (en) * | 1995-03-27 | 1996-04-18 | Siemens Nixdorf Inf Syst | Processing load measuring system for computer network design |
US5812780A (en) * | 1996-05-24 | 1998-09-22 | Microsoft Corporation | Method, system, and product for assessing a server application performance |
US6470464B2 (en) * | 1999-02-23 | 2002-10-22 | International Business Machines Corporation | System and method for predicting computer system performance and for making recommendations for improving its performance |
-
2000
- 2000-05-23 US US09/577,118 patent/US6898564B1/en not_active Expired - Fee Related
-
2004
- 2004-11-30 US US10/999,308 patent/US7403886B2/en not_active Expired - Fee Related
- 2004-11-30 US US10/999,551 patent/US7610186B2/en not_active Expired - Fee Related
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5668995A (en) | 1994-04-22 | 1997-09-16 | Ncr Corporation | Method and apparatus for capacity planning for multiprocessor computer systems in client/server environments |
US6209033B1 (en) | 1995-02-01 | 2001-03-27 | Cabletron Systems, Inc. | Apparatus and method for network capacity evaluation and planning |
US5838919A (en) | 1996-09-10 | 1998-11-17 | Ganymede Software, Inc. | Methods, systems and computer program products for endpoint pair based communications network performance testing |
US5974572A (en) * | 1996-10-15 | 1999-10-26 | Mercury Interactive Corporation | Software system and methods for generating a load test using a server access log |
US5761091A (en) | 1996-12-10 | 1998-06-02 | Bgs Systems, Inc. | Method and system for reducing the errors in the measurements of resource usage in computer system processes and analyzing process data with subsystem data |
US5943244A (en) * | 1997-02-17 | 1999-08-24 | I2 Technologies, Inc. | System for optimizing a network plan and method of operation |
US6086618A (en) | 1998-01-26 | 2000-07-11 | Microsoft Corporation | Method and computer program product for estimating total resource usage requirements of a server application in a hypothetical user configuration |
US6108800A (en) | 1998-02-10 | 2000-08-22 | Hewlett-Packard Company | Method and apparatus for analyzing the performance of an information system |
US6574587B2 (en) | 1998-02-27 | 2003-06-03 | Mci Communications Corporation | System and method for extracting and forecasting computing resource data such as CPU consumption using autoregressive methodology |
US6301615B1 (en) | 1998-10-14 | 2001-10-09 | Sun Microsystems, Inc. | Cluster performance monitoring utility |
US6317778B1 (en) | 1998-11-23 | 2001-11-13 | International Business Machines Corporation | System and method for replacement and duplication of objects in a cache |
US6542854B2 (en) | 1999-04-30 | 2003-04-01 | Oracle Corporation | Method and mechanism for profiling a system |
US6898564B1 (en) * | 2000-05-23 | 2005-05-24 | Microsoft Corporation | Load simulation tool for server resource capacity planning |
Non-Patent Citations (1)
Title |
---|
Vekiarides et al., "NETCAP: A tool for the Capacity Planning of Ethernet LANS" Model Analysis and Simulation of Compter and Telecommunication Systems 1998 Proceedings Sixth. |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7610186B2 (en) * | 2000-05-23 | 2009-10-27 | Microsoft Corporation | Load simulation tool for server resource capacity planning |
US20050102121A1 (en) * | 2000-05-23 | 2005-05-12 | Microsoft Corporation | Load simulation tool for server resource capacity planning |
US20060168069A1 (en) * | 2005-01-25 | 2006-07-27 | International Business Machines Corporation | Method, system and program product for performing message benchmarking |
US20070038039A1 (en) * | 2005-07-29 | 2007-02-15 | Siemens Aktiengesellschaft | Method and device for dynamically generating test scenarios for complex computer-controlled systems, e.g. for medical engineering installations |
US7870432B2 (en) * | 2005-07-29 | 2011-01-11 | Siemens Aktiengesellschaft | Method and device for dynamically generating test scenarios for complex computer-controlled systems, e.g. for medical engineering installations |
US8073671B2 (en) * | 2006-03-31 | 2011-12-06 | Microsoft Corporation | Dynamic software performance models |
US20070239766A1 (en) * | 2006-03-31 | 2007-10-11 | Microsoft Corporation | Dynamic software performance models |
US20100161548A1 (en) * | 2008-12-23 | 2010-06-24 | Cynthia Dolan | System and method for capacity planning in an information network |
US8595740B2 (en) | 2009-03-31 | 2013-11-26 | Microsoft Corporation | Priority-based management of system load level |
US9274844B2 (en) | 2009-03-31 | 2016-03-01 | Microsoft Technology Licensing, Llc | Priority-based management of system load level |
US20100251253A1 (en) * | 2009-03-31 | 2010-09-30 | Microsoft Corporation | Priority-based management of system load level |
US20110107249A1 (en) * | 2009-10-30 | 2011-05-05 | Cynthia Dolan | Exception Engine For Capacity Planning |
US8788960B2 (en) * | 2009-10-30 | 2014-07-22 | At&T Intellectual Property I, L.P. | Exception engine for capacity planning |
US20120179446A1 (en) * | 2011-01-07 | 2012-07-12 | International Business Machines Corporation | Rapidly determining fragmentation in computing environments |
US8548790B2 (en) * | 2011-01-07 | 2013-10-01 | International Business Machines Corporation | Rapidly determining fragmentation in computing environments |
US10055762B2 (en) | 2012-06-06 | 2018-08-21 | Microsoft Technology Licensing, Llc | Deep application crawling |
US8990183B2 (en) * | 2012-06-06 | 2015-03-24 | Microsoft Technology Licensing, Llc | Deep application crawling |
US20130332442A1 (en) * | 2012-06-06 | 2013-12-12 | Microsoft Corporation | Deep application crawling |
US10230613B2 (en) | 2013-03-22 | 2019-03-12 | Naver Business Platform Corp. | Test system for reducing performance test cost in cloud environment and test method therefor |
US10574758B2 (en) | 2017-07-28 | 2020-02-25 | International Business Machines Corporation | Server connection capacity management |
US10616346B2 (en) * | 2017-07-28 | 2020-04-07 | International Business Machines Corporation | Server connection capacity management |
US11070625B2 (en) | 2017-07-28 | 2021-07-20 | International Business Machines Corporation | Server connection capacity management |
US11553047B2 (en) | 2018-11-30 | 2023-01-10 | International Business Machines Corporation | Dynamic connection capacity management |
US11792275B2 (en) | 2018-11-30 | 2023-10-17 | International Business Machines Corporation | Dynamic connection capacity management |
US11108685B2 (en) | 2019-06-27 | 2021-08-31 | Bank Of America Corporation | Intelligent delivery of data packets within a network transmission path based on time intervals |
US11526784B2 (en) | 2020-03-12 | 2022-12-13 | Bank Of America Corporation | Real-time server capacity optimization tool using maximum predicted value of resource utilization determined based on historica data and confidence interval |
Also Published As
Publication number | Publication date |
---|---|
US20050102121A1 (en) | 2005-05-12 |
US20050102318A1 (en) | 2005-05-12 |
US6898564B1 (en) | 2005-05-24 |
US7610186B2 (en) | 2009-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7403886B2 (en) | Load stimulation tool for server resource capacity planning | |
US6862623B1 (en) | Capacity planning for server resources | |
US10942781B2 (en) | Automated capacity provisioning method using historical performance data | |
US6606658B1 (en) | Apparatus and method for server resource usage display by comparison of resource benchmarks to determine available performance | |
US7035919B1 (en) | Method for calculating user weights for thin client sizing tool | |
US8171133B2 (en) | Management apparatus and management method for computer system | |
US6601020B1 (en) | System load testing coordination over a network | |
US7146353B2 (en) | Resource allocation for multiple applications | |
US9135075B2 (en) | Capacity planning for computing systems hosting multi-tier application based on think time value and resource cost of composite transaction using statistical regression analysis | |
US6505248B1 (en) | Method and system for monitoring and dynamically reporting a status of a remote server | |
US8640132B2 (en) | Jobstream planner considering network contention and resource availability | |
US7689628B2 (en) | Monitoring several distributed resource elements as a resource pool | |
US7054934B2 (en) | Tailorable optimization using model descriptions of services and servers in a computing environment | |
US8296426B2 (en) | System and method for performing capacity planning for enterprise applications | |
US7050961B1 (en) | Solution generation method for thin client sizing tool | |
US7680916B2 (en) | System for improving the performance of a computer software application in a server network | |
US7412509B2 (en) | Control system computer, method, and program for monitoring the operational state of a system | |
US20040193397A1 (en) | Data storage system emulation | |
US20030084156A1 (en) | Method and framework for generating an optimized deployment of software applications in a distributed computing environment using layered model descriptions of services and servers | |
US20030084155A1 (en) | Representing capacities and demands in a layered computing environment using normalized values | |
US6963828B1 (en) | Metafarm sizer configuration optimization method for thin client sizing tool | |
JP2007183883A (en) | Resource plan preparation program, recording medium with this program recorded thereon, and apparatus and method for preparing resource plan | |
JP5112277B2 (en) | Reproduction processing method, computer system, and program | |
US7171667B2 (en) | System and method for allocating resources based on locally and globally determined priorities | |
US7779127B2 (en) | System and method for determining a subset of transactions of a computing system for use in determing resource costs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034543/0001 Effective date: 20141014 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20200722 |