CN101853197B - 确定服务器负载能力 - Google Patents

确定服务器负载能力 Download PDF

Info

Publication number
CN101853197B
CN101853197B CN201010158799.9A CN201010158799A CN101853197B CN 101853197 B CN101853197 B CN 101853197B CN 201010158799 A CN201010158799 A CN 201010158799A CN 101853197 B CN101853197 B CN 101853197B
Authority
CN
China
Prior art keywords
tolerance
server
server computer
measurement
computer system
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
Application number
CN201010158799.9A
Other languages
English (en)
Other versions
CN101853197A (zh
Inventor
G·巴克内尔
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101853197A publication Critical patent/CN101853197A/zh
Application granted granted Critical
Publication of CN101853197B publication Critical patent/CN101853197B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • H04L43/55Testing of service level quality, e.g. simulating service usage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

一种用于确定与服务器负载相应的用户数目的方法、计算机程序产品和系统,包括:在与网络耦合的测试计算机系统上仿真一个或多个虚拟用户。从所述一个或多个虚拟用户中的每个将一个或多个客户端请求发送至在与所述网络耦合的服务器计算机系统上执行的服务器应用。测量表示所述服务器计算机系统上的负载的度量。将所述度量与预定值相比较;以及基于所述度量和所述预定值之间的差改变所述一个或多个虚拟用户的数目,直到所述度量在所述预定值的预定范围内。

Description

确定服务器负载能力
技术领域
本发明涉及计算机测试系统,更具体地,涉及用于确定服务器负载的计算机测试系统。
背景技术
通常,服务器计算机同时向许多用户提供服务。有时,同时尝试访问服务器的许多用户可能使服务器过载。这可使得服务器遭受服务延迟,或完全故障。避免这些故障的一个方法是知晓服务器的限制,并设计服务器或服务器的系统以处理期望的负载。
测试服务器可包括向服务器发送由虚拟用户生成的测试业务和测试客户端请求。这些方法中的某些通过仿真用户业务和客户端请求、并测量被测试的服务器的响应来创建网络业务。然而,为了有效设计服务器或服务器的系统以处理期望的负载,设计者可需要知晓与特定操作点相关的服务器负载。例如,为了设计健壮的服务器系统,设计者可需要服务器不在特定能力(比如80%能力)以上运行。在这个情况下,期望知晓什么类型的负载将使得服务器以80%能力运行。
发明内容
在一实施例中,一种用于确定与服务器负载相应的用户数目的方法,包括:在与网络耦合的测试计算机系统上仿真一个或多个虚拟用户。从所述一个或多个虚拟用户中的每个将一个或多个客户端请求发送至在与所述网络耦合的服务器计算机系统上执行的服务器应用。测量表示所述服务器计算机系统上的负载的度量。将所述度量与预定值相比较;以及基于所述度量和所述预定值之间的差改变所述一个或多个虚拟用户的数目,直到所述度量在所述预定值的预定范围内。
可提供以下特征中的一个或多个。所述度量可表示所述服务器计算机系统的一个或多个处理器上的负载。测量度量可包括:周期性测量所述度量,并将每个测量存储在存储器中。该方法可计算所述度量的运行平均数和/或对于所述度量应用低通滤波器。所述度量可由在所述服务器计算机系统上执行的
Figure GSA00000082349100021
管理工具服务、和rstat.d性能测量服务、和/或自定义性能测量工具来提供(Windows是微软公司在美国、其他国家、或美国和其他国家的商标)。此外,改变所述一个或多个虚拟用户的数目可包括:基于在所述度量和所述预定值之间的百分数差改变所述一个或多个虚拟用户的数目。
在另一实施例中,一种用于确定与服务器负载相应的用户数目的计算机程序产品位于计算机可读介质上。计算机程序产品的计算机指令在由处理器执行时使得所述处理器执行以下操作,包括:在与网络耦合的测试计算机系统上仿真一个或多个虚拟用户。从所述一个或多个虚拟用户中的每个将一个或多个客户端请求发送至在与所述网络耦合的服务器计算机系统上执行的服务器应用。测量表示所述服务器计算机系统上的负载的度量。将所述度量与预定值相比较;以及基于所述度量和所述预定值之间的差改变所述一个或多个虚拟用户的数目,直到所述度量在所述预定值的预定范围内。
可提供以下特征中的一个或多个。所述度量可表示所述服务器计算机系统的一个或多个处理器上的负载。测量度量可包括:周期性测量所述度量,并将每个测量存储在存储器中。所述操作可计算所述度量的运行平均数和/或对于所述度量应用低通滤波器。所述度量可由在所述服务器计算机系统上执行的Windows管理工具服务、和rstat.d性能测量服务、和/或自定义性能测量工具来提供。此外,改变所述一个或多个虚拟用户的数目可包括:基于在所述度量和所述预定值之间的百分数差改变所述一个或多个虚拟用户的数目。
在另一实施例中,一种用于确定与服务器负载相应的用户数目的系统,包括:一个或多个处理器;一个或多个存储器;在所述一个或多个存储器上存储的一个或多个软件指令集,在由所述一个或多个处理器执行时其执行以下操作,包括:在与网络耦合的测试计算机系统上仿真一个或多个虚拟用户。从所述一个或多个虚拟用户中的每个将一个或多个客户端请求发送至在与所述网络耦合的服务器计算机系统上执行的服务器应用。测量表示所述服务器计算机系统上的负载的度量。将所述度量与预定值相比较;以及基于所述度量和所述预定值之间的差改变所述一个或多个虚拟用户的数目,直到所述度量在所述预定值的预定范围内。
可提供以下特征中的一个或多个。所述度量可以是所述服务器计算机系统的一个或多个处理器上的负载的测量。测量度量可包括:周期性测量所述度量,并将每个测量存储在存储器中。所述操作可计算所述度量的运行平均数和/或对于所述度量应用低通滤波器。所述度量可由在所述服务器计算机系统上执行的Windows管理工具服务、和rstat.d性能测量服务、和/或自定义性能测量工具来提供。此外,改变所述一个或多个虚拟用户的数目可包括:基于在所述度量和所述预定值之间的百分数差改变所述一个或多个虚拟用户的数目。
附图说明
图1是与分布式计算网络耦合的服务器测试处理的示意图。
图2是图1的测试系统配置处理的流程图。
在附图中的类似标号指示类似的元素。
具体实施方式
图1示出服务器测试处理10,其可位于测试计算机12上并且可由其执行,测试计算机12可连接至网络14(例如因特网或局域网)。测试计算机12的实例可包括但不限于:个人计算机、服务器计算机、系列服务器或个人计算机、迷你计算机、和主机计算机。
图1还示出服务器应用16,其可位于服务器计算机18上并且可由其执行。服务器计算机18也可连接至网络14,如图所示。服务器计算机18的实例也可包括但不限于:个人计算机、服务器计算机、系列服务器或个人计算机、迷你计算机、和主机计算机。
服务器应用16可以是接受来自客户端应用的请求、输入、或其他通信的任意服务器应用。例如,服务器应用16可以是web服务器、应用服务器、ftp服务器、或接受来自用户(例如用户20)的请求或输入的任意服务器。服务器应用的实例包括
Figure GSA00000082349100041
IIS服务器和IBM服务器(Microsoft是微软公司在美国、其他国家、或美国和其他国家的商标;IBM和WebSphere是国际商业机器公司在美国、其他国家、或美国和其他国家的商标或注册商标)。
服务器计算机18可运行网络操作系统,其实例可包括但不限于:例如Microsoft Windows XP服务器;Novell
Figure GSA00000082349100043
或Redhat
Figure GSA00000082349100044
(Novell和NetWare是Novell公司在美国、其他国家、或美国和其他国家的注册商标;Redhat是Red Hat公司在美国、其他国家、或美国和其他国家的注册商标;Linux是Linus Torvalds在美国、其他国家、或美国和其他国家的注册商标)。
如以下将更详细讨论地,服务器测试处理10可仿真一个或多个虚拟用户,并且可从一个或多个虚拟用户将一个或多个客户端请求发送至服务器应用16。服务器测试处理10还测量用以代表在服务器计算机系统18上的负载的度量,并将所述度量与预定值相比较。服务器测试处理10可改变被仿真的虚拟用户的数目,直到该度量在预定值的预定范围内。被仿真的虚拟用户的数目的改变可基于在度量和预定值之间的差。
可由集成到测试计算机12中的一个或多个处理器(未示出)和一个或多个存储器架构(未示出)来执行服务器测试处理10的指令集和例程,其可包括一个或多个软件模块和一个或多个软件指令集,并且可存储在耦合至测试计算机12的存储设备22上。类似地,可由集成到服务器计算机18中的一个或多个处理器(未示出)和一个或多个存储器架构(未示出)来执行服务器应用16的指令集和例程,其可包括一个或多个软件模块和一个或多个软件指令集,并且可存储在耦合至服务器计算机18的存储设备24上。存储器设备22、24可包括但不限于:硬盘驱动器;固态驱动器;磁带驱动器;光盘驱动器;RAID阵列;随机存取存储器(RAM);和只读存储器(ROM)。
服务器测试处理10和服务器应用16的指令集和例程可通过使用编译器生成,例如IBM XL编译器、Visual
Figure GSA00000082349100051
编译器、或汇编程序(VisualStudio是微软公司在美国、其他国家、或美国和其他国家的商标)。指令集和例程还可作为脚本生成,例如
Figure GSA00000082349100052
脚本、或其他类型软件代码(Java和所有基于Java的商标和logo是Sun Microsystems公司在美国、其他国家、或美国和其他国家的商标)。一般地且本领域已知地,服务器测试处理10和服务器应用16的指令集和例程可经由可由处理器执行的生成指令集和例程的任意方法来生成。
各种客户端电子设备可耦合至网络14。客户端电子设备的实例可包括但不限于:测试计算机12、服务器计算机18、膝上型电脑26、个人数字助理(未示出)、数据使能的蜂窝式电话(未示出)、和专用网络设备(未示出)。一个或多个用户(例如用户20)可访问各种工具和应用,例如来自于连接至网络14的任意设备或直接来自于上面有工具或应用的设备(例如,直接来自于测试计算机12和/或服务器计算机18)的服务器测试处理10或服务器应用16。客户端电子设备可直接耦合至网络14,或可通过网络28间接耦合至网络14。例如,测试计算机12可通过二级网络28(如幻影链路线30所示)间接耦合至网络14。
存储设备22,24可包括但不限于:硬盘驱动器;固态驱动器;磁带驱动器;光盘驱动器;RAID阵列;随机存取存储器(RAM);只读存储器(ROM);压缩闪速(CF)存储设备;安全数字(SD)存储设备;和存储棒存储设备。
各个客户端电子设备可直接地或间接地耦合至网络14(或网络28)。例如,示出测试计算机12经由硬连线网络连接直接耦合至网络14。示出膝上型电脑26经由在膝上型电脑26和无线接入点(即WAP)34之间建立的无线通信信道32无线地耦合至网络14,示出为其直接地耦合至网络14。WAP 34可以是例如IEEE 802.11a、802.11b、802.11g、Wi-Fi、和/或能够在膝上型电脑26和WAP 34之间建立无线通信信道32的蓝牙设备。
本领域已知地,所有IEEE 802.11x规范可使用以太网协议和具有避免碰撞的载波检测多址接入(即CSMA/CA)用于共享。各个IEEE 802.11x规范可使用例如相移键控(即PSK)调制或补码键控(即CCK)调制。本领域已知地,蓝牙是允许例如移动电话、计算机和个人数字助理使用短距离无线连接互联的电信业规范。
参照图2,服务器计算机18可执行102服务器应用16。服务器测试处理10可仿真104一个或多个虚拟用户,并从一个或多个虚拟用户中的每个将一个或多个客户端请求发送至106服务器应用16。服务器测试处理10还可测量108用以代表在服务器计算机系统18上的负载的度量,并将所述度量与预定值相比较110。服务器测试处理10还可改变被仿真的虚拟用户的数目,直到所述度量在预定值的预定范围内。被仿真的虚拟用户的数目的改变可至少部分地基于在度量和预定值之间的差。当被仿真的虚拟用户的数目的改变达到稳定状态时,例如,度量和预定值之间的差较小或为0,并且虚拟用户的数目不再改变,服务器测试处理10可记录114用以代表与所述预定值相关的用户数目的虚拟用户数目。
服务器计算机18可执行102服务器应用16。服务器应用16可以是从用户接受输入或为用户提供输出的任意类型服务器应用。这里,从用户接受输入和/或为用户提供输出可包括(例如响应于向客户端应用的用户输入)从客户端应用接受输入和/或(例如经由客户端应用)提供可由用户接收的输出。在一个实施例中,服务器应用16可以是从用户(例如经由膝上型电脑26执行的web浏览器应用(未示出)从用户20)接收web页面请求的web服务器,并且响应地可通过利用网络14发送来向用户20提供web页面和/或web内容。然而,服务器应用16可以是任意类型服务器应用,包括但不限于:电子邮件服务器、web服务器、ftp服务器、搜索引擎、定制服务器、和任意其他服务器应用。
典型地,服务器计算机18可执行服务器应用16。换句话说,服务器计算机18的处理器可执行与服务器应用16相关的任意指令。执行服务器应用16可消耗服务器计算机18的处理器周期和/或其他处理器资源。同样,服务器应用16可使用例如与服务器计算机18相关的其他硬件资源。服务器应用16例如可选地可利用网络连接、I/O端口、硬驱动器、存储器、或与服务器计算机18相关的任意其他硬件资源。服务器应用16还可利用例如在服务器计算机18上执行的软件应用的软件资源。例如,服务器计算机18可提供软件加密服务。如果服务器应用16需要加密数据,例如,服务器应用16可使用在服务器计算机18上运行的加密服务。
服务器应用16可利用服务器计算机18的硬件和软件资源的程度可取决于在服务器应用16上存在有多大负载。例如,如果服务器应用16正在忙于执行复杂处理作业,则服务器应用16可利用服务器计算机18的多个CPU周期。同样,如果服务器应用16正在存储或发送大量数据,则服务器应用16可利用服务器计算机18的大部分硬盘驱动器或网络带宽。另一方面,如果服务器应用16不忙,则其可以以更低程度使用服务器计算机18的资源。例如,如果服务器应用16没有正在存储或发送数据,则其可以以小程度使用服务器计算机18的硬盘驱动器和/或网络带宽(如果有)。
如果服务器应用16接受来自用户的输入或向用户提供输出,然后访问服务器应用16的用户量可影响服务器应用16上的负载,并随后影响服务器应用16利用服务器计算机18的硬件和软件资源的程度。例如,如果许多用户正在访问和/或请求服务器应用16,然后服务器应用16可需要服务器计算机18的多个CPU周期来服务于所述许多用户。同样,服务器应用16可需要多个硬件驱动器或网络带宽(或任意其他硬件或软件资源)来服务于所述许多用户。作为推理,如果仅几个用户正在访问服务器应用18,然后服务器应用18可需要更少的硬件和软件资源来服务于用户。例如,如果服务器应用16是web服务器,并且如果许多用户尝试同时访问web服务器,然后服务器应用16可不得不使用服务器计算机18的多个CPU周期来处理请求,使用服务器计算机18的多个硬件驱动器带宽来提取所存储的web页面,以及使用服务器计算机18的多个网络带宽来向许多用户发送所请求的web页面。
然而,如果存在太多用户访问或请求服务器应用16,然后服务器应用16和服务器计算机18可能无法有效服务于所有用户。例如,服务器计算机18可用完CPU周期,并且可变得太忙以至于无法处理所有用户请求。备选地,某些用户请求可能被服务器应用16丢掉。这两种情况可使得期望访问正在快速和有效运行的服务器的用户无法满足。如果给定服务器计算机的软件和硬件资源,则可能存在服务器应用16可服务于用户的最佳、最大、和/或最小操作点。
由此,服务器测试处理10可仿真104服务器应用16的虚拟用户。每个虚拟用户可以是仿真服务器应用16的用户的脚本、程序、或程序的一部分。服务器测试处理10可生成网络业务和/或服务器请求,并将他们发送至106服务器应用16。对于每个虚拟用户,例如,服务器测试处理10可生成服务器应用16的用户典型的网络业务和/或服务器请求。例如,如果服务器应用16是web服务器,则测试处理10所仿真的虚拟用户可以是典型的web用户-他们可生成浏览web和访问web服务器的用户典型的web业务、web请求和web下载,即服务器应用16。
服务器测试处理10可仿真104任意数目个用户,并且将他们的业务和请求发送至106服务器应用16。例如,服务器测试处理10可仿真104许多用户(例如,对于特定情形的100000个用户),或几个用户(例如,对于特定情形的1个、或甚至0个用户)。这些被仿真的虚拟用户中的每个可将网络业务和请求发送至106服务器应用16。这样,服务器测试处理10可仿真真实世界的服务器使用情形。例如,如果服务器应用16(当安装在场内时)期望从X个数目的用户接收客户端请求时,然后服务器测试处理10可仿真104X个数目的虚拟用户,并将来自X个数目的被仿真用户的客户端请求发送至106服务器应用16。
在一个使用情形下,开发者可期望通过确定多少个用户给服务器18到特定程度的负载将来最大化服务器计算机18的效率。换句话说,如果特定服务器的目标CPU负载被指定为80%,则开发者可希望找出需要多少个访问服务器应用16的用户来创建80%的CPU负载。由此,服务器测试处理10可测量108服务器应用16的度量(例如CPU负载),将测量的度量与预订值相比较110(例如80%),并且如果测量的度量和预定值不同,则改变112被仿真的虚拟用户的数目。
服务器测试处理10可改变112或调节虚拟用户的数目,直到被测量的度量与预定值的预设差额(margin)相同或在其内。在某些情况下,增加虚拟用户的数目可增加测量的度量的值。例如,服务器测试处理10可仿真X个数目的虚拟用户。如果目标CPU负载为80%,并且如果服务器测试处理10测量108CPU负载在60%,则服务器测试处理10可增加X个数目的虚拟用户,直到CPU负载到达80%或落入80%的预设差额(例如+/-2%,或某些其他预设差额)。同样,如果测量的CPU负载大于目标80%,则服务器测试处理10可减少X个数目的虚拟用户,直到CPU负载到达80%或落入80%的预设差额。
在其他情况下,增加虚拟用户的数目可实际减少测量的度量的值。例如,采用测量的度量是CPU空闲时间的情况。如果目标CPU空闲时间为20%,并且测量的CPU空闲时间为30%,则服务器测试处理10可增加X个数目的虚拟用户,由此使得服务器计算机18的CPU更忙并减少空闲时间。在该情况下,服务器测试处理10可增加X个数目的虚拟用户,直到测量的CPU空闲时间减少到20%或落入20%的差额。同样,如果测量的CPU空闲时间为10%,则服务器测试处理10可减少X个数目的虚拟用户,直到测量的CPU空闲时间增加到20%或落入20%的差额。
测量的度量和预定值可以是服务器计算机18和/或服务器应用16的性能的任意测量或指示符。度量和值可以是CPU负载、CPU空闲时间、硬盘驱动器带宽、硬盘驱动器空闲空间、网络使用、软件线程数、或表示服务器计算机18或服务器应用16的性能的任意其他度量。在一个实施例中,服务器测试处理10可通过访问在服务器计算机18上运行的Windows管理工具(WMI)或rstat.d接口来测量108度量。WMI和/或rstat.d服务可以是提供服务器计算机18的性能度量的统计和测量的工具。服务器测试处理10可访问和测量108这些WMI和/或rstat.d度量。本领域普通技术人员将认识到,可使用提供性能度量的任意工具,包括但不限于:例如,WMI、rstat.d、定制测量工具、可测量服务器计算机18的性能的任意其他工具。定制测量工具可以是用于测量服务器计算机18的度量的整体或部分开发的软件程序和/或硬件工具。
某些度量的值可改变或波动。这些波动可引起错误的或不精确的测量结果。感兴趣的测量可以是波动测量的总数或平均数,但是度量值的改变和波动可能独立于服务器测试处理10。例如,如果CPU负载是波动度量,则服务器测试处理10所进行的顺序测量可能波动。也就是说,例如,目标CPU值为80%,并且在服务器计算机18上的实际、中间CPU负载为80%,但是由于测量错误或CPU负载测量的特征,服务器计算机18的CPU负载的任意个体测量可在70%和90%之间改变。在该情况下,服务器计算机18在期望负载下运行,但是任意给定测量可能落入70%和90%之间的任意比例。如果特定测量为70%,则服务器测试处理可错误地增加虚拟用户的数目。如果特定测量为90%,则服务器测试处理可错误地减少虚拟用户的数目。如果度量随着每个测量波动,则服务器测试处理10可随着每个元素改变112虚拟用户的数目,并且可能无法达到稳定状态调节。
为了避免这样的波动,服务器测试处理10可多次测量108度量,并且可在存储器或计算机可读存储设备(例如存储设备22)中存储116每个测量。如果服务器测试处理10存储116一系列测量,则服务器测试处理10可聚集118测量,以去除测量波动。服务器测试处理10可通过采用移动平均数-通过存储最后几个测量和使用最后几个测量的平均数来聚集118测量,以确定是否改变112虚拟用户的数目。服务器测试处理10也可对最后几个存储的测量采用低通滤波器,例如低通无限输入响应(IIR)或有限输入响应(FIR)滤波器,以去除测量中的波动。一般地,服务器测试处理10可通从测量去除波动和差异的任意方式来聚集118测量。
服务器测试处理10还可记录114与特定度量和/或特定运行点相关的用户数目。例如,假设设计者期望知晓需要多少个用户在服务器计算机18的CPU上创建80%的负载。在该情况下,在测试服务器计算机18的同时,服务器测试处理10可测量服务器计算机18的CPU负载,并改变虚拟用户的数目,直到服务器计算机18的CPU负载达到80%(或到达80%的预设差额中的数目)。服务器测试处理10可发现其必须仿真10000个虚拟用户,用于服务器计算机18的CPU达到80%。服务器测试处理10然后可记录114其发现的用户数目,即10000,作为需要在服务器计算机18的CPU上施加80%负载的用户数目。服务器测试处理10可在存储器、存储设备、文件、数据库中、或用于存储数据的任意其他介质中记录114虚拟用户的数目。
根据一个实施例,服务器测试处理10可用于确定达到服务器上的特定目标负载所需的用户数目。在另一简化实例中,如果服务器计算机18上的目标CPU负载为50%,则服务器测试处理可仿真10410000个用户。服务器测试处理10可测量108服务器计算机18上的CPU负载,并发现在具有10000个虚拟用户时,服务器计算机18在100%下运行。为了达到50%,服务器测试处理10可基于测量值(100%)和预定值(50%)的百分数或比例来改变112虚拟用户数目。例如,由于预定值(50%)是目标值(100%)的一半,则服务器测试处理10可将用户数目减少一半。由此,服务器测试处理10可将虚拟用户数目从10000减少到5000个虚拟用户。服务器测试处理10可重复该处理,增加和减少虚拟用户的数目,直到测量的度量等于预定值或落入预定值的范围内。
描述了多个实施例。然而,以下权利要求限定了本发明的范围。

Claims (18)

1.一种用于确定与服务器负载相应的用户数目的方法,包括:
在与网络耦合的测试计算机系统上仿真一个或多个虚拟用户;
从所述一个或多个虚拟用户中的每个将一个或多个客户端请求发送至在与所述网络耦合的服务器计算机系统上执行的服务器应用;
测量表示所述服务器计算机系统上的负载的度量,所述度量包括CPU负载、CPU空闲时间、硬盘驱动器带宽、硬盘驱动器空闲空间、网络使用、软件线程数,其他表示服务器计算机的性能的测量,其他表示服务器应用的性能的测量中的一个或者多个;其中测量度量包括:周期性测量所述度量并将每个测量存储在存储器中;其中测量度量包括以下至少一个:
计算所述度量的运行平均数;
对所述度量应用低通滤波器;
将所述度量与预定值相比较;以及
基于所述度量和所述预定值之间的差改变所述一个或多个虚拟用户的数目,直到所述度量在所述预定值的预定范围内。
2.如权利要求1所述的方法,其中所述度量表示所述服务器计算机系统的一个或多个处理器上的负载。
3.如权利要求1所述的方法,其中测量度量包括:周期性测量所述度量,并将每个测量存储在存储器中。
4.如权利要求3所述的方法,其中测量度量包括以下步骤中的一个或多个:
计算所述度量的运行平均数;以及
对于所述度量应用低通滤波器。
5.如权利要求1所述的方法,其中测量度量包括:测量由以下项目中的一个或多个提供的度量:
在所述服务器计算机系统上执行的Windows管理工具服务;
在所述服务器计算机上执行的rstat.d性能测量服务;以及
在所述服务器计算机上执行的自定义测量工具。
6.如权利要求1所述的方法,其中改变所述一个或多个虚拟用户的数目包括:至少部分地基于在所述度量和所述预定值之间的百分数差改变所述一个或多个虚拟用户的数目。
7.一种用于确定与服务器负载相应的用户数目的装置,包括:
用于在与网络耦合的测试计算机系统上仿真一个或多个虚拟用户的模块;
用于从所述一个或多个虚拟用户中的每个将一个或多个客户端请求发送至在与所述网络耦合的服务器计算机系统上执行的服务器应用的模块;
用于测量表示所述服务器计算机系统上的负载的度量的模块,其中所述度量包括CPU负载、CPU空闲时间、硬盘驱动器带宽、硬盘驱动器空闲空间、网络使用、软件线程数,其他表示服务器计算机的性能的测量,其他表示服务器应用的性能的测量中的一个或者多个;其中测量度量包括:周期性测量所述度量并将每个测量存储在存储器中;其中测量度量包括以下至少一个:
计算所述度量的运行平均数;
对所述度量应用低通滤波器;
用于将所述度量与预定值相比较的模块;以及
用于基于所述度量和所述预定值之间的差改变所述一个或多个虚拟用户的数目,直到所述度量在所述预定值的预定范围内的模块。
8.如权利要求7所述的装置,其中所述度量表示所述服务器计算机系统的一个或多个处理器上的负载。
9.如权利要求7所述的装置,其中所述用于测量表示所述服务器计算机系统上的负载的度量的模块,包括:用于周期性测量所述度量,并将每个测量存储在存储器中的子模块。
10.如权利要求9所述的装置,其中所述用于测量表示所述服务器计算机系统上的负载的度量的模块,包括以下子模块中的一个或多个:
用于计算所述度量的运行平均数的子模块;以及
用于对于所述度量应用低通滤波器的子模块。
11.如权利要求7所述的装置,其中所述用于测量表示所述服务器计算机系统上的负载的度量的模块,包括:用于测量由以下项目中的一个或多个提供的度量的子模块:
在所述服务器计算机系统上执行的Windows管理工具服务;
在所述服务器计算机上执行的rstat.d性能测量服务;以及
在所述服务器计算机上执行的自定义测量工具。
12.如权利要求7所述的装置,其中用于基于所述度量和所述预定值之间的差改变所述一个或多个虚拟用户的数目,直到所述度量在所述预定值的预定范围内的模块,包括:用于基于在所述度量和所述预定值之间的百分数差改变所述一个或多个虚拟用户的数目的子模块。
13.一种用于确定与服务器负载相应的用户数目的系统,包括:
一个或多个处理器;
一个或多个存储器;
在所述一个或多个存储器上存储的一个或多个软件指令集,在由所述一个或多个处理器执行时其执行以下操作,包括:
在与网络耦合的测试计算机系统上仿真一个或多个虚拟用户;
从所述一个或多个虚拟用户中的每个将一个或多个客户端请求发送至在与所述网络耦合的服务器计算机系统上执行的服务器应用;
测量表示所述服务器计算机系统上的负载的度量,所述度量包括CPU负载、CPU空闲时间、硬盘驱动器带宽、硬盘驱动器空闲空间、网络使用、软件线程数,其他表示服务器计算机的性能的测量,其他表示服务器应用的性能的测量中的一个或者多个;其中测量度量包括:周期性测量所述度量并将每个测量存储在存储器中;其中测量度量包括以下至少一个:
计算所述度量的运行平均数;
对所述度量应用低通滤波器;
将所述度量与预定值相比较;以及
基于所述度量和所述预定值之间的差改变所述一个或多个虚拟用户的数目,直到所述度量在所述预定值的预定范围内。
14.如权利要求13所述的系统,其中所述度量表示所述服务器计算机系统的一个或多个处理器上的负载。
15.如权利要求13所述的系统,其中测量度量包括:周期性测量所述度量,并将每个测量存储在存储器中。
16.如权利要求15所述的系统,其中测量度量包括以下步骤中的一个或多个:
计算所述度量的运行平均数;以及
对于所述度量应用低通滤波器。
17.如权利要求13所述的系统,其中测量度量包括:测量由以下项目中的一个或多个提供的度量:
在所述服务器计算机系统上执行的Windows管理工具服务;
在所述服务器计算机上执行的rstat.d性能测量服务;以及
在所述服务器计算机上执行的自定义测量工具。
18.如权利要求13所述的系统,其中改变所述一个或多个虚拟用户的数目包括:基于在所述度量和所述预定值之间的百分数差改变所述一个或多个虚拟用户的数目。
CN201010158799.9A 2009-03-31 2010-03-30 确定服务器负载能力 Expired - Fee Related CN101853197B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/415,369 US8301761B2 (en) 2009-03-31 2009-03-31 Determining server load capacity with virtual users
US12/415369 2009-03-31

Publications (2)

Publication Number Publication Date
CN101853197A CN101853197A (zh) 2010-10-06
CN101853197B true CN101853197B (zh) 2013-08-28

Family

ID=42785622

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010158799.9A Expired - Fee Related CN101853197B (zh) 2009-03-31 2010-03-30 确定服务器负载能力

Country Status (4)

Country Link
US (1) US8301761B2 (zh)
JP (1) JP2010244528A (zh)
KR (1) KR20100109368A (zh)
CN (1) CN101853197B (zh)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8065161B2 (en) 2003-11-13 2011-11-22 Hospira, Inc. System for maintaining drug information and communicating with medication delivery devices
US9123077B2 (en) 2003-10-07 2015-09-01 Hospira, Inc. Medication management system
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
US9990110B1 (en) 2006-08-14 2018-06-05 Akamai Technologies, Inc. Private device cloud for global testing of mobile applications
CA2666509C (en) 2006-10-16 2017-05-09 Hospira, Inc. System and method for comparing and utilizing activity information and configuration information from multiple medical device management systems
US10079716B2 (en) 2009-03-04 2018-09-18 Amazon Technologies, Inc. User controlled environment updates in server cluster
US8595714B1 (en) * 2009-03-04 2013-11-26 Amazon Technologies, Inc. User controlled environment updates in server cluster
US8271106B2 (en) 2009-04-17 2012-09-18 Hospira, Inc. System and method for configuring a rule set for medical event management and responses
US8605609B2 (en) * 2010-03-11 2013-12-10 Silver Spring Networks, Inc. Simulation of multiple nodes in an internetwork
US9251035B1 (en) 2010-07-19 2016-02-02 Soasta, Inc. Load test charts with standard deviation and percentile statistics
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
US8341462B2 (en) * 2010-07-19 2012-12-25 Soasta, Inc. System and method for provisioning and running a cross-cloud test grid
US9021362B2 (en) 2010-07-19 2015-04-28 Soasta, Inc. Real-time analytics of web performance using actual user measurements
US9229842B2 (en) 2010-07-19 2016-01-05 Soasta, Inc. Active waterfall charts for continuous, real-time visualization of website performance data
US9436579B2 (en) 2010-07-19 2016-09-06 Soasta, Inc. Real-time, multi-tier load test results aggregation
US10230602B2 (en) * 2010-12-09 2019-03-12 Northwestern University Endpoint web monitoring system and method for measuring popularity of a service or application on a web server
CN103037410A (zh) * 2011-09-30 2013-04-10 中兴通讯股份有限公司 一种应用于eNB系统的性能控制方法及装置
US9921934B1 (en) * 2011-10-14 2018-03-20 Amazon Techologies, Inc. Storage process metrics
US9785533B2 (en) 2011-10-18 2017-10-10 Soasta, Inc. Session template packages for automated load testing
WO2013059615A1 (en) 2011-10-21 2013-04-25 Hospira, Inc. Medical device update system
CN102750211A (zh) * 2012-06-11 2012-10-24 苏州阔地网络科技有限公司 一种压力测试方法及系统
WO2014138446A1 (en) 2013-03-06 2014-09-12 Hospira,Inc. Medical device communication method
US9772923B2 (en) 2013-03-14 2017-09-26 Soasta, Inc. Fast OLAP for real user measurement of website performance
WO2015031774A1 (en) 2013-08-30 2015-03-05 Hospira, Inc. System and method of monitoring and managing a remote infusion regimen
US9662436B2 (en) 2013-09-20 2017-05-30 Icu Medical, Inc. Fail-safe drug infusion therapy system
US10311972B2 (en) 2013-11-11 2019-06-04 Icu Medical, Inc. Medical device system performance index
US9584395B1 (en) 2013-11-13 2017-02-28 Netflix, Inc. Adaptive metric collection, storage, and alert thresholds
WO2015077320A1 (en) 2013-11-19 2015-05-28 Hospira, Inc. Infusion pump automation system and method
US10601674B2 (en) 2014-02-04 2020-03-24 Akamai Technologies, Inc. Virtual user ramp controller for load test analytic dashboard
JP6853669B2 (ja) 2014-04-30 2021-03-31 アイシーユー・メディカル・インコーポレーテッド 条件付きの警報転送を用いた患者治療システム
US9724470B2 (en) 2014-06-16 2017-08-08 Icu Medical, Inc. System for monitoring and delivering medication to a patient and method of using the same to minimize the risks associated with automated therapy
US9539383B2 (en) 2014-09-15 2017-01-10 Hospira, Inc. System and method that matches delayed infusion auto-programs with manually entered infusion programs and analyzes differences therein
US10346431B1 (en) 2015-04-16 2019-07-09 Akamai Technologies, Inc. System and method for automated run-tme scaling of cloud-based data store
EP3304370B1 (en) 2015-05-26 2020-12-30 ICU Medical, Inc. Infusion pump system and method with multiple drug library editor source capability
NZ750032A (en) 2016-07-14 2020-05-29 Icu Medical Inc Multi-communication path selection and security system for a medical device
US10387282B2 (en) * 2016-09-20 2019-08-20 Rohde & Schwarz Gmbh & Co. Kg Test unit and test method for efficient testing during long idle periods
JP6957194B2 (ja) 2016-12-13 2021-11-02 キヤノン株式会社 サービスシステム、その制御方法、およびそのプログラム
CN108933709B (zh) * 2017-05-27 2021-03-26 腾讯科技(深圳)有限公司 测试服务器性能的方法、装置和计算机可读存储介质
CN109144846B (zh) * 2017-06-28 2022-07-05 北京京东尚科信息技术有限公司 用于测试服务器的测试方法和装置
US10861592B2 (en) 2018-07-17 2020-12-08 Icu Medical, Inc. Reducing infusion pump network congestion by staggering updates
EP3824386B1 (en) 2018-07-17 2024-02-21 ICU Medical, Inc. Updating infusion pump drug libraries and operational software in a networked environment
US11483403B2 (en) 2018-07-17 2022-10-25 Icu Medical, Inc. Maintaining clinical messaging during network instability
WO2020018389A1 (en) 2018-07-17 2020-01-23 Icu Medical, Inc. Systems and methods for facilitating clinical messaging in a network environment
US10692595B2 (en) 2018-07-26 2020-06-23 Icu Medical, Inc. Drug library dynamic version management
AU2019309766B2 (en) 2018-07-26 2024-06-13 Icu Medical, Inc. Drug library management system
CN113287095A (zh) * 2019-01-02 2021-08-20 维萨国际服务协会 用于系统测试的计算机和管道
CN112333050A (zh) * 2021-01-04 2021-02-05 全时云商务服务股份有限公司 基于模拟会议性能测试方法、装置、设备及存储介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005063222A (ja) * 2003-08-15 2005-03-10 Nippon Telegr & Teleph Corp <Ntt> 負荷制御方法および装置、ならびに負荷制御用プログラム
JP4677813B2 (ja) * 2005-03-31 2011-04-27 株式会社日立製作所 サーバ性能計測方法及びサーバ性能計測システム並びにこれらに用いるコンピュータプログラム
JP4810264B2 (ja) * 2006-03-20 2011-11-09 独立行政法人産業技術総合研究所 濃度測定装置
US7657401B2 (en) * 2006-05-31 2010-02-02 International Business Machines Corporation Systems and methods for predicting load test resource requirements
US7908382B2 (en) * 2006-06-07 2011-03-15 International Business Machines Corporation System and method to optimally manage performance's virtual users and test cases
US7620856B2 (en) * 2006-12-28 2009-11-17 Sap Portals Israel Ltd. Framework for automated testing of enterprise computer systems
US7783469B2 (en) * 2007-01-05 2010-08-24 International Business Machines Corporation Methods and computer program products for benchmarking multiple collaborative services provided by enterprise software
JP2008190268A (ja) * 2007-02-07 2008-08-21 Matsushita Electric Ind Co Ltd 通信システムおよびそのプログラム
JP2008234407A (ja) * 2007-03-22 2008-10-02 Toshiba Corp 自動負荷試験装置および自動負荷試験方法
US7757117B2 (en) * 2007-04-17 2010-07-13 International Business Machines Corporation Method and apparatus for testing of enterprise systems
US8631401B2 (en) * 2007-07-24 2014-01-14 Ca, Inc. Capacity planning by transaction type
US7953887B2 (en) * 2008-02-14 2011-05-31 International Business Machines Corporation Asynchronous automated routing of user to optimal host
US8135816B2 (en) * 2008-03-11 2012-03-13 International Business Machines Corporation Coordinating rendezvous of multiple virtual users across multiple distributed devices
US20090271152A1 (en) * 2008-04-28 2009-10-29 Alcatel Load testing mechanism for server-based applications
US8639813B2 (en) * 2008-11-25 2014-01-28 Citrix Systems, Inc. Systems and methods for GSLB based on SSL VPN users
US20100223190A1 (en) * 2009-02-27 2010-09-02 Sean Michael Pedersen Methods and systems for operating a virtual network operations center

Also Published As

Publication number Publication date
JP2010244528A (ja) 2010-10-28
CN101853197A (zh) 2010-10-06
KR20100109368A (ko) 2010-10-08
US8301761B2 (en) 2012-10-30
US20100250732A1 (en) 2010-09-30

Similar Documents

Publication Publication Date Title
CN101853197B (zh) 确定服务器负载能力
CN108009028B (zh) 消息处理方法、装置、设备及计算机可读存储介质
KR100968324B1 (ko) 네트워크를 통해 전송된 데이터의 압축 여부 판정
CN109831524B (zh) 一种负载均衡处理方法及装置
CN111666197B (zh) 压力测试方法和装置、电子设备以及计算机可读介质
Rahmeh et al. A dynamic biased random sampling scheme for scalable and reliable grid networks
US5819045A (en) Method for determining a networking capability index for each of a plurality of networked computers and load balancing the computer network using the networking capability indices
CN111800501B (zh) 处理业务请求的方法及装置、存储介质、电子设备
US7783663B2 (en) Dynamic path partitioning to multipath storage devices
CN116700920A (zh) 云原生混合部署集群资源调度方法及装置
CN111565216A (zh) 一种后端负载均衡方法、装置、系统及存储介质
US20060037018A1 (en) System, method and software providing an adaptive job dispatch algorithm for large distributed jobs
CN116862549A (zh) 服务成本确定方法、装置、电子设备及非易失性存储介质
US7626917B2 (en) Methods and apparatus for cost minimization of multi-tiered infrastructure with end-to-end delay guarantees
WO2013027332A1 (ja) 情報処理装置、情報処理方法、及びプログラム
CN110971478A (zh) 云平台服务性能的压测方法、装置及计算设备
Slim et al. On virtual network functions' placement in future distributed edge cloud
US9800469B2 (en) Predicting the performance of a multi-stage communications network under load from multiple communicating servers
CN111078477A (zh) 接口测试的方法、装置、存储介质和电子设备
WO2013027331A1 (ja) 情報処理装置、情報処理方法、及びプログラム
WO2024003998A1 (ja) 無線通信システム、基地局装置、及び通信品質提示方法
US20210099361A1 (en) Method and system for measuring quality of global cloud network
US20230319135A1 (en) Cloud financial load optimization based on power and thermal statistics aggregation
JP4613183B2 (ja) 指標値算出装置、およびプログラム
CN116126695A (zh) 一种测试用例的生成方法、装置及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130828

Termination date: 20190330

CF01 Termination of patent right due to non-payment of annual fee