US11231947B2 - Method and apparatus for determining the capacity of an application cluster - Google Patents

Method and apparatus for determining the capacity of an application cluster Download PDF

Info

Publication number
US11231947B2
US11231947B2 US15/769,050 US201615769050A US11231947B2 US 11231947 B2 US11231947 B2 US 11231947B2 US 201615769050 A US201615769050 A US 201615769050A US 11231947 B2 US11231947 B2 US 11231947B2
Authority
US
United States
Prior art keywords
application cluster
capacity
application
workload pressure
capability
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.)
Active, expires
Application number
US15/769,050
Other languages
English (en)
Other versions
US20190065222A1 (en
Inventor
Yuejia LIU
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Assigned to ALIBABA GROUP HOLDING LIMITED reassignment ALIBABA GROUP HOLDING LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: LIU, Yuejia
Publication of US20190065222A1 publication Critical patent/US20190065222A1/en
Application granted granted Critical
Publication of US11231947B2 publication Critical patent/US11231947B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3442Recording 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3457Performance evaluation by simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability

Definitions

  • the disclosed embodiments relate to the field of computer technologies, and in particular, to methods and apparatuses for obtaining a capacity of an application cluster.
  • the “capacity” refers to the number of instances (or the number of machines) required by the application cluster.
  • the capacity of an application cluster is usually calculated via human estimation or single-machine workload pressure testing.
  • a desired capability or desired total workload pressure value of an application cluster and a capability of a single machine are estimated first. Then, the expected, desired capability (or the estimated total workload pressure value) is divided by the estimated capability of the single machine, so as to obtain an overall workload capacity of the application cluster. After capacities of all applications are obtained according to this method, a capacity percentage of each of the applications can be calculated.
  • a workload pressure testing tool is used to test a single machine to obtain a capability of the single machine. Then, a desired capability is divided by the capability of the single machine obtained through the one-machine workload pressure test to obtain the overall capacity of the application cluster.
  • the individual capabilities of the machine obtained through the above two methods will be affected by various external factors.
  • the obtained values may be less reliable, further affecting the accuracy of the overall capacity of the application cluster.
  • VM Virtual Manufacturing
  • the problem of overestimated capability of a machine may exist and large deviations in data may occur when the overall capacity of the applications is calculated using the expected capability.
  • the transaction traffic model for a large-scale promotion is very different from the transaction traffic model in a normal state, and this is also a factor affecting the accuracy of capacity estimation.
  • One objective of the disclosed embodiments is to provide a method for obtaining a capacity of an application cluster, aiming to improve the accuracy of an overall capacity of the application cluster. Accordingly, the disclosed embodiments further include an apparatus for obtaining a capacity of an application cluster to guarantee implementation and application of the above method.
  • the disclosed embodiments describe a method for obtaining a capacity of an application cluster, comprising: setting up a simulated application cluster to be tested, the simulated application cluster comprising at least two testing machines; performing an overall workload pressure testing on the test machines of the application cluster to obtain an average single-machine capability of the test machines; and calculating an application cluster capacity based on a total workload pressure of the application cluster and the average single-machine capability of the test machines.
  • performing an overall workload pressure testing on the test machines of the application cluster to obtain an average single-machine capability of the test machines comprises: performing an overall workload pressure testing on the test machines of the application cluster according to a preset initial workload pressure value; adjusting the workload pressure value; and obtaining the average single-machine capability of the testing machines when the workload pressure value reaches a maximum value within a workload pressure value that triggers a rate limit threshold of the application cluster.
  • adjusting the workload pressure value comprises reducing the workload pressure value according to a preset step length when the initial workload pressure value triggers the rate limit threshold of the application cluster.
  • obtaining the average single-machine capability of the testing machines comprises reducing the capacity of the application cluster when a load capability of the application cluster reaches a capacity reduction threshold of auto scaling; and using an average query-per-second of the testing machines of the application cluster as the average single-machine capability of the testing machines when the capacity of the application cluster is reduced such that the load capability of the application cluster reaches a capacity expansion threshold of the auto scaling.
  • reducing the capacity of the application cluster comprises gradually reducing the capacity of the application cluster according to a preset capacity reduction ratio.
  • the method further comprises calculating a capacity percentage of a single application cluster within all of the application clusters after capacities of all the application clusters are obtained.
  • the method further comprises adjusting the capacity of the application cluster according to a planned data-handling capability of the application cluster.
  • the adjusting the capacity of the application cluster according to a planned data-handling capability of the application cluster comprises adjusting the capacity of the application cluster according to a ratio of the planned data-handling capability of the application cluster to the total workload pressure value of the application cluster.
  • the application cluster when there is one application cluster, the application cluster comprises at least two testing machines; and when there is more than one application cluster, a single application cluster thereof comprises at least one testing machine.
  • the disclosed embodiments further describe an apparatus for obtaining a capacity of an application cluster, comprising: a simulation unit, configured to set up a simulated application cluster to be tested, the simulated application cluster comprising at least two testing machines; a workload pressure test unit, configured to perform an overall workload pressure testing on the test machines of the application cluster to obtain an average single-machine capability of the test machines; and a capacity calculation unit, configured to calculate the application cluster capacity based on a total workload pressure of the application cluster and the average single-machine capability of the test machines.
  • the workload pressure test unit comprises an initialization subunit, configured to perform an overall workload pressure testing on the test machines of the application cluster according to a preset initial workload pressure value; an adjustment subunit, configured to adjust the workload pressure value; and an acquisition subunit, configured to obtain the average single-machine capability of the testing machines when the workload pressure value reaches a maximum value within a workload pressure value that triggers a rate limit threshold of the application cluster.
  • the acquisition subunit comprises a capacity reduction subunit, configured to reduce the capacity of the application cluster when a load capability of the application cluster reaches a capacity reduction threshold of auto scaling; and a determination subunit, configured to use an average query-per-second of the testing machines of the application cluster as the average single-machine capability of the testing machines when the capacity of the application cluster is reduced such that the load capability of the application cluster reaches a capacity expansion threshold of the auto scaling.
  • the apparatus further comprises a capacity adjustment unit, configured to adjust the capacity of the application cluster according to a planned data-handling capability of the application cluster.
  • the disclosed embodiments can obtain a more accurate average single-machine capability of the machines that is closer to reality, thereby obtaining a more accurate capacity of the application cluster.
  • FIG. 1 is a flow diagram illustrating a method for obtaining a capacity of an application cluster according to some embodiments of the disclosure.
  • FIG. 2 is a flow diagram illustrating a method for performing an overall workload pressure testing on testing machines of an application cluster to be tested to obtain an average single-machine capability of the testing machines according to some embodiments of the disclosure.
  • FIG. 3 is a flow diagram illustrating a method for obtaining an average single-machine capability of testing machines according to some embodiments of the disclosure.
  • FIG. 4 is a flow diagram illustrating a method for obtaining a capacity of an application cluster according to some embodiments of the disclosure.
  • FIG. 5 is a block diagram of an apparatus for obtaining a capacity of an application cluster according to some embodiments of the disclosure.
  • FIG. 6 is a block diagram of a workload pressure test unit according to some embodiments of the disclosure.
  • FIG. 7 is a block diagram of an acquisition subunit according to some embodiments of the disclosure.
  • FIG. 8 is a block diagram of an apparatus for obtaining a capacity of an application cluster according to some embodiments of the disclosure.
  • FIG. 1 a flow diagram illustrating a method for obtaining a capacity of an application cluster according to some embodiments of the disclosure is illustrated.
  • the method may include the following steps.
  • Step 101 Initialize a simulated application cluster to be tested, the simulated application cluster optionally comprising at least two testing machines.
  • an environment for measuring capacity percentages of multiple application clusters is prepared first; and one or more application clusters that require capacity measurement are determined from the multiple application clusters.
  • the application cluster may include at least two testing machines.
  • a single application cluster may include at least one testing machine.
  • An apparatus for obtaining a capacity of an application cluster (briefly referred to as an apparatus) first correspondingly sets up a simulation environment in this step according to the determined application cluster that requires capacity measurement, i.e., setting up an application cluster identical to the application cluster that requires capacity measurement.
  • One difference between the simulation environment set up by the apparatus and the actual application cluster may be that the application cluster in the simulation environment cannot provide access externally, and can only be used for capacity measurement.
  • Step 102 Perform overall workload pressure testing on the test machines of the application cluster to calculate an average single-machine capability of the test machines.
  • the workload pressure testing simulates a workload pressure regarding online traffic.
  • a workload pressure testing tool can be used to adjust and control traffic applied to the testing machines of the application cluster.
  • the overall workload pressure testing process is performed simultaneously on multiple testing machines of the application cluster.
  • the manner may involve cooperative workload pressure testing of multiple application clusters, where the multiple application clusters have an invoking relationship therebetween, and the traffic for workload pressure testing also simulates the real online traffic.
  • the overall workload pressure test when compared with the single-machine workload pressure testing, is closer to the reality.
  • this embodiment can directly obtain capability limitations of multiple testing machines of the application cluster, and obtain the average single-machine capability of the testing machines through the average calculation. It is also possible to introduce an elastic platform during the process of workload pressure testing to perform capacity expansion or capacity reduction for the testing machines of the application cluster, thereby obtaining the average single-machine capability of the testing machines. For specific details, please refer to the description for the subsequent embodiments.
  • Step 103 Calculate and obtain the application cluster capacity based on a total workload pressure of the application cluster and the average single-machine capability of the test machines.
  • the capacity of the application cluster can be obtained by calculation according to an estimated or preset total workload pressure value of the application cluster and the average single-machine capability of the testing machines. Specifically, the capacity of the application cluster can be obtained by dividing the total workload pressure value of the application cluster with the average single-machine capability of the testing machines.
  • the total workload pressure value of the application cluster may be preset, and may also be estimated according to the existing methods, which are not specifically limited here.
  • the obtaining of the total workload pressure value may have two situations: 1. in a situation where a preset target value exists; for example, if a target is 12 W, and a workload pressure testing is performed based on the 12 W; 2. in a situation where a target workload pressure value is not estimated, a workload pressure testing is mainly to see how much workload pressure that the current total machine resources can handle.
  • capacity percentages of the multiple application clusters can be further adjusted.
  • the elastic platform will adjust the capacity percentage of each application cluster. When machine resources are limited, the capacity will be reduced if it is excessive and will be expanded if it is insufficient. Finally, each of the multiple application clusters will be adjusted, using an elastic platform, to a capacity percentage adapted to the current pressure.
  • the disclosed embodiments can obtain a more accurate average single-machine capability of the machines that is closer to reality, thereby obtaining a more accurate capacity of the application cluster.
  • a process of performing an overall workload pressure testing on testing machines of an application cluster to obtain an average single-machine capability of the testing machines may include the following steps.
  • Step 201 Perform overall workload pressure testing on the test machines of an application cluster according to a preset initial workload pressure value.
  • overall workload pressure testing can be performed on testing machines of a simulated application cluster to be tested using a workload pressure testing tool according to a preset initial workload pressure value, e.g., a user-designated initial workload pressure value.
  • Step 202 Adjust the workload pressure value.
  • the workload pressure value can be increased gradually. Specifically, the workload pressure value can be increased gradually according to a preset step length. If the initial workload pressure value is set to be excessively large which triggers the rate limit threshold of the application cluster, the workload pressure value can be reduced. When the workload pressure value is reduced, the workload pressure testing tool can reduce the workload pressure value gradually according to a preset step length.
  • the rate limit threshold of the application cluster is set according to an estimated limit of a workload pressure-handling capability of the application cluster. Exceeding the rate limit threshold indicates that the application cluster has reached the limit of the workload pressure-handling capability.
  • the workload pressure can be stabilized by adjusting the workload pressure value with the workload pressure testing tool, such that no rate limit will occur in the application cluster, nor will the workload pressure be excessively small.
  • Step 203 Obtain the average single-machine capability of the testing machines when the workload pressure value reaches a maximum value within a workload pressure value that triggers a rate limit threshold of the application cluster.
  • the average single-machine capability of the testing machines can be obtained when the workload pressure value adjusted by the workload pressure testing tool reaches the maximum value of the workload pressure value that triggers the rate limit threshold of the application cluster.
  • Calculation is done according to the maximum value of the workload pressure value. After the maximum value of the workload pressure value is obtained, the average single-machine capability of the testing machines can be obtained according to a ratio of the maximum value of the workload pressure value to the quantity of the testing machines included in the application cluster.
  • a process of obtaining the average single-machine capability of the testing machines may include the following steps.
  • Step 301 Reduce the capacity of the application cluster when a load capability of the application cluster reaches a capacity reduction threshold of auto scaling.
  • auto scaling is a mechanism that dynamically adjusts the scale of the application cluster according to the load of an online application cluster.
  • the mechanism not only can reduce costs, but it also can improve the stability of the online application cluster.
  • the auto scaling can be implemented using an elastic platform. Specifically, when the workload pressure value reaches the maximum value of a workload pressure value that triggers the rate limit threshold of the application cluster, the elastic platform can be triggered to start. The elastic platform can then dynamically adjust the capacity of the application cluster according to the load of the online application cluster.
  • the capacity reduction threshold the capacity of the application cluster needs to be reduced so the scale of the application cluster is reduced.
  • the capacity expansion needs to be performed so the scale of the application cluster is increased. For example, 80% of CPU load being the capacity reduction threshold may be set, and 90% of CPU load being the capacity expansion threshold may be set.
  • the apparatus reduces the capacity of the application cluster. Specifically, the capacity of the application cluster can be gradually reduced according to a preset capacity reduction ratio.
  • Step 302 Use an average query-per-second of the testing machines of the application cluster as the average single-machine capability of the testing machines when the capacity of the application cluster is reduced such that the load capability of the application cluster reaches a capacity expansion threshold of the auto scaling.
  • the load capability of the application cluster is increased after the capacity reduction.
  • the average query-per-second of the testing machines of the application cluster at this time may be used as the average single-machine capability of the testing machines.
  • the apparatus can dynamically adjust the capacity of the application cluster using the auto scaling according to the load of the online application cluster, which reduces the costs and improves the stability of the online application cluster.
  • the previous step 103 can be performed to calculate and obtain the capacity of the application cluster.
  • the method for obtaining a capacity of an application cluster may further include the following steps (in addition to step 101 , 102 , and 103 discussed in FIG. 1 ).
  • Step 401 Adjust the capacity of the application cluster according to a planned data-handling capability of the application cluster.
  • this embodiment can be applied to capacity preparation before a “mega” sale is about to happen.
  • the capacity of the application cluster can be adjusted according to the planned data-handling capability of the application cluster.
  • the capacity of the application cluster can be adjusted according to a ratio of the planned data-handling capability (P) of the application cluster to the total workload pressure value (L) of the application cluster, so as to obtain an online environment capacity of the application cluster.
  • the online environment capacity of the application cluster may be calculated according to the following formula:
  • the adjusting process can implement an automatic capacity preparation for the application cluster before the mega sale is about to take place.
  • the method may further include: calculating a capacity percentage of a single application cluster within all of the application clusters after capacities of all the application clusters are obtained. Assuming that the quantity of the application clusters is 100, a proportion of the capacity of a single application cluster with respect to the capacity of all the application clusters may be calculated respectively to obtain the corresponding capacity percentage. As such, when the actual capacity of the planned application cluster cannot meet the requirement of the online environment capacity, the capacity of the single application cluster may be prepared according to the above capacity percentage. For example, an online environment capacity Ci of the ith application cluster is obtained by calculation according to the above formula. An online environment capacity C of all the application clusters is further obtained by calculation, and then capacity can be prepared based on C. Assuming that an actual capacity R of a planned application cluster obtained by the preparation is less than C, allocation for capacity of the single application cluster may be performed based on R and the capacity percentage.
  • An example of the method for obtaining a capacity of an application cluster is provided here to enable those skilled in the art to better understand the disclosed embodiments.
  • the example may include the following steps.
  • Step S 1 Testing machines to be tested are selected and the testing machines are placed to an isolated simulation environment. Moreover, in the simulation environment, the testing machines may be grouped according to preset proportions, and the obtained workload pressure testing groups may be in one-to-one corresponding relationship with application clusters.
  • Step S 2 Overall workload pressure testing is performed on the application clusters in the workload pressure testing groups using a workload pressure testing tool according to a pre-configured initial workload pressure value n.
  • Step S 3 In the case that the initial workload pressure value is set to be excessively large which triggers a rate limit threshold of the application cluster, the workload pressure value can be gradually reduced using the workload pressure testing tool according to a preset step length.
  • the preset step length may be s %, and the specific numerical value (s) of the preset step length is not limited in one embodiment.
  • Step S 4 An elastic platform is started to adjust the capacity of the application cluster when the current workload pressure value reaches a maximum value within a workload pressure value which triggers the rate limit threshold of the application cluster.
  • the capacity of the application cluster may be reduced to reduce the scale of the application cluster.
  • an average qps (Query-per-second) of the machines in the application cluster may be used as the average single-machine capability of the machines of the application cluster until average individual capabilities of the machines of all the application clusters are acquired.
  • the above load may include a CPU and a request response time (RT).
  • a CPU By taking the CPU as an example, 80% may be set as a capacity reduction threshold thereof, and 90% may be set as a capacity expansion threshold thereof.
  • Step S 6 The capacity expansion threshold of the elastic platform is identical to the rate limit threshold, and as the step length value of the capacity reduction may exceed that of the capacity expansion by several percentages, the above average single-machine capability of the machines may be finely adjusted by the capacity expansion to accurately calculate the capacity of the application cluster.
  • the capacity expansion quantity the overall workload pressure handled by the current application cluster/the average single-machine capability of the machines. Current capacities of the application clusters as well as a capacity percentage and a current pressure test flow L of a single application cluster are obtained after the fine adjustment on all the application clusters is completed.
  • Step S 7 Capacity preparation before a mega sale takes place is performed.
  • the capacity of the application cluster can be adjusted according to a ratio of the planned data-handling capability (P) of the application cluster to the total workload pressure value (L) of the application cluster, so as to obtain an online environment capacity of the application cluster.
  • Step S 8 The capacities of the applications are prepared one by one according to the online environment capacity of the application clusters.
  • the capacity will be reduced if it is excessive and will be expanded if it is insufficient, so as to automatically implement the capacity preparation for the mega sale during the whole process.
  • the capacity of the single application cluster may be prepared according to the above capacity percentage.
  • FIG. 5 a block diagram of an apparatus for obtaining a capacity of an application cluster according to some embodiments of the disclosure is shown.
  • the apparatus may include the following units.
  • a simulation unit 501 is configured to set up a simulated application cluster to be tested, the simulated application cluster optionally comprising at least two testing machines.
  • a workload pressure test unit 502 is configured to perform an overall workload pressure testing on the test machines of the application cluster to obtain an average single-machine capability of the test machines.
  • a capacity calculation unit 503 is configured to calculate and obtain the application cluster capacity based on a total workload pressure of the application cluster and the average single-machine capability of the test machines.
  • the apparatus can obtain a more accurate average single-machine capability of the machines that is closer to reality, thereby obtaining a more accurate capacity of the application cluster.
  • the workload pressure test unit 502 may include the following subunits.
  • An initialization subunit 601 is configured to perform an overall workload pressure testing on the test machines of the application cluster according to a preset initial workload pressure value.
  • An adjustment subunit 602 configured to adjust the workload pressure value.
  • An acquisition subunit 603 is configured to obtain the average single-machine capability of the testing machines when the workload pressure value reaches a maximum value within a workload pressure value that triggers a rate limit threshold of the application cluster.
  • the adjustment subunit 602 may be configured to reduce the workload pressure value according to a preset step length when the initial workload pressure value triggers the rate limit threshold of the application cluster.
  • the acquisition subunit 603 may further include the following subunits.
  • a capacity reduction subunit 701 is configured to reduce the capacity of the application cluster when a load capability of the application cluster reaches a capacity reduction threshold of auto scaling.
  • a determination subunit 702 is configured to use an average query-per-second of the testing machines of the application cluster as the average single-machine capability of the testing machines when the capacity of the application cluster is reduced such that the load capability of the application cluster reaches a capacity expansion threshold of the auto scaling.
  • the capacity reduction subunit 701 may be configured to gradually reduce the capacity of the application cluster according to a preset capacity reduction ratio.
  • the apparatus may further include the following units.
  • a capacity adjustment unit 801 is configured to adjust the capacity of the application cluster according to a planned data-handling capability of the application cluster.
  • the capacity adjustment unit 801 may be configured to adjust the capacity of the application cluster according to a ratio of the planned data-handling capability of the application cluster to the total workload pressure value of the application cluster.
  • the embodiments further provide an electronic device, including a memory and a processor.
  • the processor and the memory are interconnected using a bus.
  • the bus may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like.
  • ISA Industry Standard Architecture
  • PCI Peripheral Component Interconnect
  • EISA Extended Industry Standard Architecture
  • the bus may be classified into an address bus, a data bus, a control bus, and the like.
  • the memory is configured to store a program.
  • the program may include program codes that include a computer operation instruction.
  • the memory may include a high-speed RAM memory, and may also include a non-volatile memory, e.g., at least one magnetic disk memory.
  • the processor is configured to read the program codes in the memory to perform the following steps: setting up a simulated application cluster to be tested, the simulated application cluster optionally comprising at least two testing machines; performing an overall workload pressure testing on the test machines of the application cluster to obtain an average single-machine capability of the test machines; and calculating and obtaining the application cluster capacity based on a total workload pressure of the application cluster and the average single-machine capability of the test machines.
  • the disclosed embodiments may be provided as a method, an apparatus or a computer program product. Therefore, the embodiments may be implemented as a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the embodiments may be a computer program product implemented on one or more computer usable storage media (including, but not limited to, a magnetic disk memory, a CD-ROM, an optical memory, and the like) including computer usable program code.
  • a computer usable storage media including, but not limited to, a magnetic disk memory, a CD-ROM, an optical memory, and the like
  • a computer device includes one or more central processing units (CPUs), an input/output interface, a network interface, and a memory.
  • the memory may include a computer readable medium in the form of a non-permanent memory, a random access memory (RAM) and/or a non-volatile memory or the like, such as a read-only memory (ROM) or a flash memory (flash RAM).
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash memory
  • the memory is an example of a computer readable medium.
  • the computer readable medium includes permanent and non-permanent, movable and non-movable media that can achieve information storage by means of any methods or techniques.
  • the information may be computer readable instructions, data structures, modules of programs or other data.
  • a storage medium of a computer includes, but is not limited to, a phase change memory (PRAM), a static random access memory (SRAM), a dynamic random access memory (DRAM), other types of RAMs, a ROM, an electrically erasable programmable read-only memory (EEPROM), a flash memory or other memory technologies, a compact disk read-only memory (CD-ROM), a digital versatile disc (DVD) or other optical storages, a cassette tape, a magnetic tape/magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, and can be used to store information accessible to a computing device.
  • the computer readable medium does not include transitory computer readable media (transitory media), such as modulated data signals and carrier waves.
  • These computer program instructions may be provided to a general-purpose computer, a special-purpose computer, an embedded processor, or a processor of any other programmable data processing terminal device to generate a machine, so that the instructions executed by a computer or a processor of any other programmable data processing terminal device generate an apparatus for implementing a specified function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
  • These computer program instructions may also be stored in a computer readable memory that can instruct the computer or any other programmable data processing device to work in a particular manner, such that the instructions stored in the computer readable memory generate an artifact that includes an instruction apparatus.
  • the instruction apparatus implements a specified function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
  • These computer program instructions may also be loaded onto a computer or another programmable data processing terminal device, such that a series of operation steps are performed on the computer or another programmable terminal device, thereby generating computer-implemented processing. Therefore, the instructions executed on the computer or another programmable terminal device provide steps for implementing a specified function in one or more processes in the flowcharts and/or in one or more blocks in the block diagrams.
US15/769,050 2015-11-16 2016-11-07 Method and apparatus for determining the capacity of an application cluster Active 2039-05-21 US11231947B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201510784781.2A CN106708621B (zh) 2015-11-16 2015-11-16 一种获得应用集群容量的方法和装置
CN201510784781.2 2015-11-16
PCT/CN2016/104837 WO2017084505A1 (zh) 2015-11-16 2016-11-07 一种获得应用集群容量的方法和装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/104837 A-371-Of-International WO2017084505A1 (zh) 2015-11-16 2016-11-07 一种获得应用集群容量的方法和装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/572,736 Continuation US20220129288A1 (en) 2015-11-16 2022-01-11 Method and apparatus for determining the capacity of an application cluster

Publications (2)

Publication Number Publication Date
US20190065222A1 US20190065222A1 (en) 2019-02-28
US11231947B2 true US11231947B2 (en) 2022-01-25

Family

ID=58717323

Family Applications (2)

Application Number Title Priority Date Filing Date
US15/769,050 Active 2039-05-21 US11231947B2 (en) 2015-11-16 2016-11-07 Method and apparatus for determining the capacity of an application cluster
US17/572,736 Pending US20220129288A1 (en) 2015-11-16 2022-01-11 Method and apparatus for determining the capacity of an application cluster

Family Applications After (1)

Application Number Title Priority Date Filing Date
US17/572,736 Pending US20220129288A1 (en) 2015-11-16 2022-01-11 Method and apparatus for determining the capacity of an application cluster

Country Status (3)

Country Link
US (2) US11231947B2 (zh)
CN (1) CN106708621B (zh)
WO (1) WO2017084505A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109669668B (zh) * 2017-10-17 2020-11-24 北京京东尚科信息技术有限公司 一种系统性能测试中实现模拟交易执行的方法和装置
CN110321270A (zh) * 2018-03-29 2019-10-11 广东神马搜索科技有限公司 单机性能测试方法、装置及服务器
CN110008030B (zh) * 2019-04-16 2020-06-19 苏州浪潮智能科技有限公司 一种元数据访问的方法、系统及设备
CN110311810A (zh) * 2019-06-13 2019-10-08 北京奇艺世纪科技有限公司 一种服务器资源配置方法、装置、电子设备及存储介质
CN111400049A (zh) * 2020-03-26 2020-07-10 北京搜房科技发展有限公司 资源调整方法及装置
US20210319151A1 (en) * 2020-04-14 2021-10-14 Citrix Systems, Inc. Systems and Methods for Production Load Simulation
CN112363926A (zh) * 2020-11-10 2021-02-12 平安普惠企业管理有限公司 生产环境容量检测方法、装置、计算机设备及存储介质
CN112506751B (zh) * 2020-11-27 2022-11-18 浪潮电子信息产业股份有限公司 一种服务器整机性能的对比测试方法、装置、设备及介质
CN113703913B (zh) * 2021-08-06 2024-04-23 长江存储科技有限责任公司 设备测试方法及装置
CN113656299B (zh) * 2021-08-12 2023-08-22 北京百度网讯科技有限公司 极限qps的确定方法、装置、电子设备及可读存储介质
CN113923216B (zh) * 2021-09-29 2023-12-15 阿里巴巴(中国)有限公司 一种分布式集群限流系统及方法和分布式集群节点

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5675739A (en) 1995-02-03 1997-10-07 International Business Machines Corporation Apparatus and method for managing a distributed data processing system workload according to a plurality of distinct processing goal types
US6505249B1 (en) 1999-12-28 2003-01-07 Bellsouth Intellectual Property Corporation Method for optimizing end-to-end processing performance by selecting optimal values after running benchmarks repeatedly with different values
US6865527B2 (en) 2000-12-18 2005-03-08 Hewlett-Packard Development Company, L.P. Method and apparatus for computing data storage assignments
US8104041B2 (en) 2006-04-24 2012-01-24 Hewlett-Packard Development Company, L.P. Computer workload redistribution based on prediction from analysis of local resource utilization chronology data
CN102646062A (zh) 2012-03-20 2012-08-22 广东电子工业研究院有限公司 一种云计算平台应用集群弹性扩容方法
US20130007753A1 (en) 2011-06-28 2013-01-03 Microsoft Corporation Elastic scaling for cloud-hosted batch applications
US20130185729A1 (en) 2012-01-13 2013-07-18 Rutgers, The State University Of New Jersey Accelerating resource allocation in virtualized environments using workload classes and/or workload signatures
US8782130B2 (en) 2009-04-15 2014-07-15 Accenture Global Services Limited Method and system for client-side scaling of web server farm architectures in a cloud data center
US8856797B1 (en) 2011-10-05 2014-10-07 Amazon Technologies, Inc. Reactive auto-scaling of capacity
CN104182288A (zh) 2014-08-18 2014-12-03 浪潮电子信息产业股份有限公司 一种服务器集群系统功耗自动化测试的方法
US20150113120A1 (en) 2013-10-18 2015-04-23 Netflix, Inc. Predictive auto scaling engine
CN104794058A (zh) 2015-05-07 2015-07-22 合肥云中信息科技有限公司 一种云桌面虚拟环境性能的测试方法
US20160048415A1 (en) 2014-08-14 2016-02-18 Joydeep Sen Sarma Systems and Methods for Auto-Scaling a Big Data System
US9448824B1 (en) 2010-12-28 2016-09-20 Amazon Technologies, Inc. Capacity availability aware auto scaling
US9513935B2 (en) 2014-10-28 2016-12-06 International Business Machines Corporation Auto-scaling thresholds in elastic computing environments
US9547534B2 (en) 2014-10-10 2017-01-17 International Business Machines Corporation Autoscaling applications in shared cloud resources
US9612876B2 (en) 2013-12-19 2017-04-04 Xerox Corporation Method and apparatus for estimating a completion time for mapreduce jobs
US9626295B2 (en) 2015-07-23 2017-04-18 Qualcomm Incorporated Systems and methods for scheduling tasks in a heterogeneous processor cluster architecture using cache demand monitoring
US9817699B2 (en) 2013-03-13 2017-11-14 Elasticbox Inc. Adaptive autoscaling for virtualized applications

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571288B1 (en) * 1999-04-26 2003-05-27 Hewlett-Packard Company Apparatus and method that empirically measures capacity of multiple servers and forwards relative weights to load balancer
US6898564B1 (en) * 2000-05-23 2005-05-24 Microsoft Corporation Load simulation tool for server resource capacity planning
CN100501695C (zh) * 2006-12-25 2009-06-17 中国电信股份有限公司 应用软件在生产环境下的性能预测方法
CN102411515A (zh) * 2011-07-29 2012-04-11 国网信息通信有限公司 一种服务器容量估算的方法和系统
CN102394799B (zh) * 2011-11-29 2013-10-30 山东中创软件工程股份有限公司 一种应用服务器集群效率测试方法及系统

Patent Citations (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5675739A (en) 1995-02-03 1997-10-07 International Business Machines Corporation Apparatus and method for managing a distributed data processing system workload according to a plurality of distinct processing goal types
US6505249B1 (en) 1999-12-28 2003-01-07 Bellsouth Intellectual Property Corporation Method for optimizing end-to-end processing performance by selecting optimal values after running benchmarks repeatedly with different values
US6865527B2 (en) 2000-12-18 2005-03-08 Hewlett-Packard Development Company, L.P. Method and apparatus for computing data storage assignments
US8104041B2 (en) 2006-04-24 2012-01-24 Hewlett-Packard Development Company, L.P. Computer workload redistribution based on prediction from analysis of local resource utilization chronology data
US8782130B2 (en) 2009-04-15 2014-07-15 Accenture Global Services Limited Method and system for client-side scaling of web server farm architectures in a cloud data center
US9270745B2 (en) 2009-04-15 2016-02-23 Accenture Global Services Limited Method and system for client-side scaling of web server farm architectures in a cloud data center
US9448824B1 (en) 2010-12-28 2016-09-20 Amazon Technologies, Inc. Capacity availability aware auto scaling
US20130007753A1 (en) 2011-06-28 2013-01-03 Microsoft Corporation Elastic scaling for cloud-hosted batch applications
US9571347B2 (en) 2011-10-05 2017-02-14 Amazon Technologies, Inc. Reactive auto-scaling of capacity
US9112782B2 (en) 2011-10-05 2015-08-18 Amazon Technologies, Inc. Reactive auto-scaling of capacity
US8856797B1 (en) 2011-10-05 2014-10-07 Amazon Technologies, Inc. Reactive auto-scaling of capacity
US20130185729A1 (en) 2012-01-13 2013-07-18 Rutgers, The State University Of New Jersey Accelerating resource allocation in virtualized environments using workload classes and/or workload signatures
CN102646062A (zh) 2012-03-20 2012-08-22 广东电子工业研究院有限公司 一种云计算平台应用集群弹性扩容方法
US9817699B2 (en) 2013-03-13 2017-11-14 Elasticbox Inc. Adaptive autoscaling for virtualized applications
US20150113120A1 (en) 2013-10-18 2015-04-23 Netflix, Inc. Predictive auto scaling engine
US9612876B2 (en) 2013-12-19 2017-04-04 Xerox Corporation Method and apparatus for estimating a completion time for mapreduce jobs
US20160048415A1 (en) 2014-08-14 2016-02-18 Joydeep Sen Sarma Systems and Methods for Auto-Scaling a Big Data System
CN104182288A (zh) 2014-08-18 2014-12-03 浪潮电子信息产业股份有限公司 一种服务器集群系统功耗自动化测试的方法
US9547534B2 (en) 2014-10-10 2017-01-17 International Business Machines Corporation Autoscaling applications in shared cloud resources
US9513935B2 (en) 2014-10-28 2016-12-06 International Business Machines Corporation Auto-scaling thresholds in elastic computing environments
CN104794058A (zh) 2015-05-07 2015-07-22 合肥云中信息科技有限公司 一种云桌面虚拟环境性能的测试方法
US9626295B2 (en) 2015-07-23 2017-04-18 Qualcomm Incorporated Systems and methods for scheduling tasks in a heterogeneous processor cluster architecture using cache demand monitoring

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
International Search Report to corresponding International Application No. PCT/CN2016/104837 dated Feb. 6, 2017 (2 pages).
Office Action to corresponding CN Application No. 201510784781.2 dated Nov. 29, 2019 (5 pages).

Also Published As

Publication number Publication date
US20220129288A1 (en) 2022-04-28
CN106708621B (zh) 2020-10-27
CN106708621A (zh) 2017-05-24
WO2017084505A1 (zh) 2017-05-26
US20190065222A1 (en) 2019-02-28

Similar Documents

Publication Publication Date Title
US20220129288A1 (en) Method and apparatus for determining the capacity of an application cluster
CN108133732B (zh) 闪存芯片的性能测试方法、装置、设备及存储介质
US9620184B1 (en) Efficient calibration of memory devices
TWI755415B (zh) 雲端環境下應用集群資源分配的方法、裝置和系統
CN107068199B (zh) 一种ssd硬盘的性能测试方法
JP2019512126A (ja) 機械学習システムをトレーニングする方法及びシステム
TWI734746B (zh) 模擬線上壓力測試的方法和裝置
CN110297743B (zh) 一种负载测试方法、装置和存储介质
WO2017023300A1 (en) Selective application testing
CN111951875B (zh) Dram内存颗粒的测试方法及装置
US9569132B2 (en) Path selection to read or write data
CN106610873B (zh) 一种Android设备上应用程序能耗预测方法
TWI763650B (zh) 一種獲得應用集群容量的方法和裝置
CN115480973A (zh) 一种服务器性能测试方法、装置、介质
US20160240267A1 (en) Persistent command parameter table for pre-silicon device testing
CN101470660A (zh) 通过子系统效能基准发生器进行系统测试的方法
CN109582295B (zh) 一种数据处理方法、装置、存储介质及处理器
CN108958658B (zh) 一种目标数据的获取方法及装置
CN108845765B (zh) 一种nand数据读取方法、系统、设备及存储介质
TW201702859A (zh) 記憶體控制器
CN108073502B (zh) 一种测试方法及其系统
CN111370049A (zh) 一种eMMC芯片测试方法和装置
CN113220467B (zh) 基于内存吞吐的dpdk性能极限推算方法和相关设备
US20190391837A1 (en) Processing division device, simulator system and processing division method
TWI774529B (zh) 雲化系統效能評估方法及系統

Legal Events

Date Code Title Description
FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

AS Assignment

Owner name: ALIBABA GROUP HOLDING LIMITED, CAYMAN ISLANDS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LIU, YUEJIA;REEL/FRAME:046847/0789

Effective date: 20180908

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED

STCF Information on status: patent grant

Free format text: PATENTED CASE