首页> 中国专利> 通过把推理用于IT系统进行自动建模的方法和设备

通过把推理用于IT系统进行自动建模的方法和设备

摘要

公开一种对信息技术系统的性能进行建模的方法。所述方法包括下述步骤:接收系统的性能数据;接收事务流程和系统布局的数据;和根据接收的数据,推断服务要求参数。如果存在表征系统的闭合式表达式,那么基于预测的响应时间和测量的响应时间之间的最小距离的优化算法可被用于获得性能参数。另一方面,离散的事件模拟器以及一组巨集式启发式搜索方法可被用于获得优化的性能参数。

著录项

  • 公开/公告号CN1610311A

    专利类型发明专利

  • 公开/公告日2005-04-27

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN200410084189.3

  • 申请日2004-10-15

  • 分类号H04L12/24;H04L12/26;G06F17/60;

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人吴丽丽

  • 地址 美国纽约

  • 入库时间 2023-12-17 16:04:13

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2008-05-28

    授权

    授权

  • 2005-06-29

    实质审查的生效

    实质审查的生效

  • 2005-04-27

    公开

    公开

说明书

技术领域

本发明涉及信息技术(“IT”)系统的性能建模。更具体地说,本发明涉及结合排队网络建模和推理(inference)技术来对IT系统的性能进行建模。

背景技术

随着因特网技术的快速发展,电子商务正在变成成熟的商业策略。随着其在因特网应用、服务和价格谈判中扮演重要角色,服务质量(“QoS”)的概念正在排除困难前进到电子商务委托和要求的前线。在增长的竞争市场中,IT管理人员和规划人员始终经受着获得下述问题的明确答案的压力:利用当前的基础结构,IT系统能够支持多少用户?关于每种服务,正在提供何种服务质量水平?站点结构能够被多快地扩大或缩小?哪些组件应被升级?是否存在适于支持预期的商业机会和未来增长的足够容量?为了解答这些问题,电子商务迫切需要一种规划和预算,性能预测,和服务水平协议规定的正式过程。这种过程要求基本理解诸如电子商务基础结构的容量、可缩放性、可用性和可靠性之类关键问题。

由于系统结构的多样性,众多正在出现的具有不同功能的应用程序(application),以及用户行为的巨大差异,电子商务基础结构的表征相当复杂。于是,在整个IT环境内,包括所有IT基础结构组件和应用程序在内,评估电子商务的提供端到端性能保证的能力是一项挑战性任务。通常使用的评估电子商务性能的方法是在生产系统中,即工作环境中,利用真实的工作量,或者在测试系统上,利用合成工作量,直接测量IT环境的性能。直接对生产系统测量性能是危险的,因为它需要使用户暴露于较差的性能之下,这会赶走客户。另一方面,具有测试站点是一项成本非常高的实践。简单地复制生产系统,并保证所有互连软件和硬件组件正确发挥作用的努力将是巨大的。另外,由于工作量空间是连续的是,因此在所有不同的负载组合内进行测试将是一项难以克服的困难任务。

评估IT系统的性能的一种备选方法是通过性能建模。在IT基础结构和应用程序的设计,工程化和优化中,性能建模已变得越来越重要。建模方法在向建筑师和工程师提供和所考虑的IT系统相关的定性和定量理解方面特别有效。尽管它存在这些优点,建模工作耗时,并且不仅要求对系统有很好的了解,而且要求通晓建模技术。

性能建模的最流行范例之一是排队网络,它解决了上述问题。排队模型的主要优点在于它捕捉性能和容量之间的基本关系。已提出了使用排队网络来对计算机系统,尤其是Web系统进行建模的思想(参见L.Kleinrock;Queueing Systems Volume II:ComputerApplications;John Wiley and Sons,1976;以及D.Menasce和V.Almeida;Capacity Planning for Web Performance;Prentice hall,1998)。该思想以通过把IT系统中的每个设备表示成一个队列,建立分析模型为基础。然而,这种方法需要了解关于IT系统中每个设备的每种请求的服务要求。在真实系统中,这种服务要求非常难以测量,因为它们不包括可能发生的排队延迟。这不仅要求了解所有设备,而且在设备数量较大,并且请求类型各不相同的情况下,还涉及收集大量的数据,以便确定在每个设备,每种请求的服务要求。实际上无法建立这样详细的低级排队网络模型。

鉴于此,本领域中需要一种目的在于使IT基础结构和应用程序的性能建模和优化的过程自动化,以便降低设备成本和劳动力成本,并缩短性能评估、预测和容量规划方面的周转时间的系统和方法。这些系统和方法应使IT管理员能够有效并且预先地(proactively)量化、控制和规划电子商务基础结构中可用容量的利用。

发明内容

鉴于常规系统的上述问题、缺陷和不利,本发明的例证特征是结合推理技术和排队模型,使IT系统与应用程序的性能建模和优化过程自动化。

本发明的方法利用高级排队网络模型捕捉主要资源和延迟效应,这提供性能测量和IT系统结构之间良好的可跟踪性。

本发明的方法只要求把最常见并且廉价的测量结果(measurement)作为输入。这种测量结果包括,例如系统通过量,服务器的利用率和端到端响应时间。

通过把上述测量数据作为输入,本发明的方法使用先进的推理技术获得IT系统的性能模型的参数。例如,可关于IT系统中的每个服务器和每个事务,推断服务要求。

在本发明的一个实施例中,可利用闭合式等式(closed-formequation)表征IT系统。在该实施例中,推理方法包括下述步骤:根据闭合式等式导出端到端响应时间公式;根据可获得的性能度量,用公式表示推理(参数估计)问题;把事务的端到端响应时间和服务器利用率(utilization)数据输入推理问题公式中;求解模型参数(每个服务器每个事务的服务要求)的推理问题,从而使模型产生的性能度量(performance metrics)到测量的性能度量的距离降至最小。

本发明的另一实施例致力于不存在闭合式表达式的情况。在这种情况下,离散事件模拟器以及一组巨集式启发式(meta-heuristic)搜索方法可被用于获得优化的性能参数。巨集式启发式搜索方式将引导搜索产生下一候选参数设置。模型的模拟器将被用于评估候选参数设置的性能度量。巨集式启发式搜索方式将被再次用于根据当前和过去的候选设置的性能度量,产生下一候选参数设置。重复该过程,直到指定的停止标准被满足为止。该程序的输出是参数设置的当前最佳估计。

在优选实施例的下述详细说明中,将说明本发明的这些及其它特征和优点,并且鉴于优选实施例的下述详细说明,对本领域的普通技术人员来说,本发明的这些及其它特征和优点将变得显而易见。

附图说明

参考附图,根据本发明的优选实施例的下述详细说明,将更好地理解前述及其它例证特征、方面和优点,其中:

图1图解说明其中可实现本发明的数据处理系统的网络;

图2是根据本发明的一个实施例,可实现成服务器的数据处理系统的方框图;

图3是图解说明其中可实现本发明的数据处理系统的方框图;

图4图解说明例证的电子商务站点及其对应的排队模型;

图5图解说明和图4中描述的电子商务站点对应的例证排队模型;

图6图解说明本发明一个实施例的方法的方框图;

图7图解说明例证的电子商务站点体系结构;

图8表示封闭的排队网络模型的例子。

具体实施方式

现在参见附图,说明本发明的一个优选实施例。本领域的普通技术人员会认识到本发明不受公开的实施例,或者申请文件中用于描述公开实施例的附图的任何方式的限制。

本发明提供一种起因于IT基础结构和应用程序的性能模型的自动参数化方法和设备。所提出的一套方法中的一个新思想是排队网络模型和先进推理技术的集成。这种方法使用系统测量数据和端到端响应时间测量数据作为输入,来推断系统的排队参数。

本发明提供和常规方法相比,有吸引力的许多特征和优点。首先,本发明利用排队网络模型的长度,排队网络模型有助于捕捉性能和容量之间的基本关系。其次,通过依赖于基于观察利用率和端到端性能数据的推理技术,本发明的方法回避了传统的排队网络建模工作的问题,传统的排队网络建模工作需要大量低级的系统监视和数据收集。由于本发明的系统接收端到端数据测量结果,建模过程变成自动化的。尤其对于复杂系统,本发明的建模方法允许快速并且准确地建立性能模型。和基于手动参数调整的常规性能建模方法相比,本发明的使用能够显著地节省时间。另外,本发明还允许根据系统监视信息,以飞击式建立性能模型。这种特征特别适用于点播系统中的动态供给。

本发明于是提供一种端到端的,自我调整的灵活方法,该方法允许根据系统监视信息,以飞击式建立性能模型。该方法可被容易地合并到从性能预测到现有IT基础结构的优化及成本低廉结构的设计的一组性能工程功能中。所有这些功能可提供网站能力的理解,以及更好地理解可缩放性,QoS,容量成本,操作风险等之间的折衷。于是,本发明使IT规划人员能够积极进取地开发并提供提高客户的基础结构,应用程序和服务管理能力的解决方案,并帮助客户预先管理他们的资源,按要求满足他们的服务水平协议。

本发明还使用高级排队网络模型捕捉主要资源和延迟效应,并提供性能量度和系统结构之间良好的可跟踪性。下面所述的普通推理方法允许通过利用诸如系统通过量、服务器利用率和端到端响应时间之类常见测量结果,推断前面提及的服务时间参数。在连网和排队文献(参见S.Alouf,P.Nain和D.Towsley的Inferring networkcharacteristics via moment-based estimators,Proceedings of the IEEEInfocom 2001 Conference,2001年4月;V.Sharma,R.Mazumdar的Estimating traffic parameters in queueing systems with localinformation,Performance Evaluation,32:217-230,1998)中存在关于相关推理问题,主要是关于单一瓶颈队列和按照先到先服务的服务规程的研究。在一个实施例中,由于输入和输出数据被倒转,因此本发明解决的推理问题不同。

建模

在分布式数据处理环境中实现本发明的优选实施例,在所述分布式数据处理环境中,端到端响应时间和CPU利用率测量结果被编辑并被用于自动建模。由于在分布式数据处理环境中实现本发明,因此首先简要说明分布式数据处理环境,以便提供本发明在其中起作用的环境。

现在参考附图,图1图解说明网络数据处理系统100,网络数据处理系统100是其中可实现本发明的计算机网络。可关于整个环境执行本发明的方法。实现本发明的计算机程序可被安装在系统100中图解说明中的任意服务器或计算机中。另一方面,外部管理服务器或计算机(图中未示出)也可实现本发明的方法。

图1中,网络数据处理系统100包括网络102,网络102是用于提供在网络数据处理系统100内,连接在一起的各种设备和计算机之间的通信链路的媒介。网络102可包括诸如有线、无线通信链路,或者光缆之类的连接。

在描述的例子中,服务器104与存储单元106一起和网络102连接。另外,客户机108、110和112也与网络102连接。这些客户机108、110和112可以是,例如个人计算机或网络计算机。在描述的例子中,服务器104向客户机108-112提供数据,例如引导文件,操作系统图像和应用程序。客户机108、110和112是服务器104的客户机。网络数据处理系统100可包括未示出的其它服务器、客户机和其它设备。在描述的例子中,网络数据处理系统100是具有代表全球网络集合的网络102和使用TCP/IP协议组相互通信的网关的因特网。因特网的核心是由对数据和消息进行路由的成千上万台商业、政府、教育和其它计算机系统组成的主节点或主计算机之间的高速数据通信线路的主干网络。当然,网络数据处理系统100也可被实现成许多不同类型的网络,例如企业内部网,局域网(LAN)或者广域网(WAN)。图1只是一个例子,并不是对本发明的结构限制。

参见图2,根据本发明的一个优选实施例,描述了可被实现成服务器,例如图1中的服务器104的数据处理系统的方框图。数据处理系统200可以是包括与系统总线206连接的多个处理器202和204的对称多处理器(SMP)系统。另一方面,也可采用单个处理器系统。存储器控制器/高速缓存208也与系统总线206连接,存储器控制器/高速缓存208提供与本地存储器209的接口。I/O总线桥接器210与系统总线206连接,提供与I/O总线212的接口。存储器控制器/高速缓存208和I/O总线桥接器210可如图所示结合在一起。

与I/O总线212连接的外设部件互连(PCI)总线桥接器214提供与PCI本地总线216的接口。许多调制解调器可与PCI本地总线216连接。典型的PCI总线实现支持四个PCI扩展插槽或者附加连接器。借助通过内装板与PCI本地总线216连接的调制解调器218和网络适配器220,可提供与图1中的客户机108-112的通信链路。

额外的PCI总线桥接器222和224向额外的PCI本地总线226和228提供接口,从所述PCI本地总线226和228,可支持额外的调制解调器或网络适配器。按照这种方式,数据处理系统200允许与多个网络计算机连接。存储器映象图形适配器230和硬盘232也可直接或间接地与I/O总线212连接,如图所示。

本领域的普通技术人员会认识到图2中描述的硬件可变化。例如,除了所描述的硬件之外,或者代替所描述的硬件,还可使用其它外设,例如光盘驱动器等。所描述的例子决不意味着对本发明结构方面的限制。

图2中描述的数据处理系统可以是,例如运行先进交互执行程序(AIX)操作系统或LINUX操作系统的IBM e-Server pSeries系统(Armonk,New York的国际商用机器公司的产品)。

现在参见图3,图3是图解说明其中可实现本发明的数据处理系统的方框图。数据处理系统300是客户机计算机的例子。数据处理系统300采用外设部件互连(PCI)本地总线结构。虽然描述的例子采用PCI总线,不过也可使用诸如加速图形接口(AGP)和工业标准结构(ISA)之类其它总线结构。处理器302和主存储器304通过PCI桥接器308与PCI本地总线306连接。PCI桥接器308还可包括处理器302用的集成存储器控制器和高速缓存存储器。通过直接部件互连或者通过内装板,可实现与PCI本地总线306的其它连接。在描述的例子中,局域网(LAN)适配器310,SCSI主总线适配器312和扩展总线接口314通过直接部件连接与PCI本地总线306连接。相反,音频适配器316,图形适配器318和音频/视频适配器319通过插入扩展插槽中的内装板与PCI本地总线306连接。扩展总线接口314向键盘和鼠标适配器320,调制解调器322和辅助存储器324提供连接。小型计算机系统接口(SCSI)主总线适配器312向硬盘驱动器326,磁带驱动器328和CD-ROM驱动器330提供连接。典型的PCI本地总线实现支持三个或四个PCI扩展插槽或附加连接器。

操作系统运行于处理器302上,并被用于协调和提供图3中的数据处理系统300内各个组件的控制。操作系统可以是可从市场上获得的操作系统,例如可从微软公司获得的Windows 2000。诸如Java之类面向对象编程系统可和操作系统一起运行,并提供从在数据处理系统300上执行的Java程序或应用软件对操作系统的调用。“Java”是太阳微系统公司的商标。操作系统、面向对象的操作系统和应用软件或程序用指令位于存储设备上,例如硬盘驱动器326上,并且可被装入主存储器304中,以便由处理器302执行。

本领域的普通技术人员会认识到根据实现,图3中的硬件可发生变化。除了图3中描述的硬件之外,或者代替图3中描述的硬件,可使用其它内部硬件或外设,例如快速ROM(或者等同的非易失性存储器)或者光盘驱动器等。另外,本发明的过程可被应用于多处理器数据处理系统。

作为另一例子,数据处理系统300可以是配置成可不依赖于某些类型的网络通信接口而引导的单独系统。作为另一例子,数据处理系统300可以是个人数字助理(PDA)设备,所述个人数字助理设备配有ROM和/或快速ROM,以便提供用于保存操作系统文件和/或用户产生的数据的非易失性存储器。

图3中描述的例子和上述例子并不意味着对本发明结构的限制。例如,除了采取PDA的形式之外,数据处理系统300也可以是笔记本计算机或手持式计算机。数据处理系统300也可以是公用信息机(kiosk)或Web设备。

本发明的建模方法基于使用排队网络模型捕捉高级电子商务服务过程。单一的服务器队列独自可能不足以适用于执行各种功能(例如浏览、搜索和购买事务)的复杂电子商务基础结构。所述服务的一些部分被并行提供,例如关于嵌入图像的请求的服务;而所述服务的其它部分被串行提供,例如数据库事务的服务。这种复杂的服务结构要求比类属单一服务器队列更复杂的模型。

图4图解说明了典型的电子商务服务结构401的一个例子。这种电子商务基础结构通常具有多层机器。每层可处理一组特定的功能(例如浏览、搜索和购买事务411)。例如,图4中存在两层。图解说明的第一层包括一群机器403,并被称为前端;图解说明的第二层包括单个数据库服务器405,并被称为后端。前端Web服务器403处理关于静态页的请求的服务。另外,前端服务器403处理许多随着时间而变化的页,在将其发送给客户机之前,这样的页均要求服务器执行脚本,以便构成该页。这些页被称为动态页,其中一些涉及从数据库服务器获得或更新信息。后端数据库服务器405处理数据库事务。虽然图4提供了电子商务基础结构的一般示图,不过本发明的方法可被扩展,以适应各种相关的基础结构。

本发明利用高级多类别排队网络模型。这种形式的模型捕捉主要资源和延迟效应,并提供性能测量和系统结构之间良好的可跟踪性。不同的事务可被处理成不同类别的工作,因为事务会对不同的组件产生不同的资源要求。引起不可忽略延迟的每个资源组件可被模拟成“黑盒”。黑盒可被定义成不指定详细的服务时间信息的组件。

根据上面描述的建模方法,两层电子商务结构401从而可被如图5中所示的高级排队网络模型501捕捉。每个前端服务器403被模拟成类属服务器503;类似地,后端数据库服务器405被模拟成类属服务器505。各种用户事务411(浏览、购买、搜索等)被看作不同的工作类别511。由于多数现代计算机系统按照分时模式运行,以便允许许多用户同等地共享资源的使用,因此假定所有类属服务器按照处理器共享规程服务于多种类别的工作。处理器共享规程可被定义成分时的近似,其中时间片(quantum)长度趋于0。从而,如果系统中存在n个工作,那么它们均同时接收1/n资源。事实上,根据多个工作类别是被顺序处理还是被并行处理,在不同的黑盒可能需要不同的服务规程。

根据本发明的一个实施例,建立性能模型的初始步骤之一是获得排队网络模型中每个类属服务器上每个类别的服务要求的参数。理想地,获得这些参数值涉及直接测量在每个设备处每个类别的资源消耗,实践中,这样做的成本极高。一种解决方案依赖于可测量并且相对廉价的性能度量,例如端到端响应时间,和一些或全部服务器的CPU负载信息。端到端响应时间可被容易地测量,端到端响应时间可被定义成从用户发起请求到用户收到响应为止的时间。事实上,公司通常设置关于这些端到端延迟的具体目标,以便保证令人满意的用户体验。CPU负载信息是用于Web服务性能监视的另一种度量。

本发明可利用通用推理方法,利用最常见的测量结果,例如系统通过量,服务器的利用率,和端到端响应时间,推断这些服务时间参数。由于IT系统的随机性,因此难以精确地确认哪个测量结果组最佳。从而,如果IT系统模型的所得到的性能最接近于测量的性能,那么该组推断的参数可被定义为“最佳”。两种不同性能度量之间的距离可以是一般的,例如跨越不同组件或类别的加权平均。

本发明中应用的推理方法可包括两方面。如果底层的排队网络模型具有闭合形式的性能表示(或良好的分析近似),那么其性能可用公式表示成未知服务要求参数的函数,解算机(solver)或其它优化工具可被用于获得最佳参数设置。上述建模过程被描述成图6中的模块603,该模块表示了本发明的实现。

下面关于在底层排队网络模型中具有I个服务器,J种不同的事务类型的系统说明一个例子,其中在服务器i的事务j的服务时间(用Sij表示)未知。实际测量事务j的到达速率(arrival rate)λj;和Rj(事务j的端到端响应时间),j=1,...,J。此外,服务器i的利用率可用pi表示,i=1,...,I。

对于开放排队网络环境中的例证系统来说,按照处理器共享服务规程的闭合式响应时间(Rj)表达式(即图6中的等式615)包括:

>>>ρ>i>>=>>Σ>>j>=>1>>J>>>λ>j>>>S>ij>>>s>

>>>R>ij>>=>>>S>ij>>>1>->>ρ>i>>>>>s>

>>>R>j>>=>>Σ>>i>=>1>>I>>>R>ij>>=>>Σ>>i>=>1>>I>>>>S>ij>>>1>->>ρ>i>>>>>s>

为了得到封闭排队网络环境中端到端响应时间的闭合式表达式(即等式615),均值分析(MVA)算法(例如参见M,Reiser和S.S.Lavenberg,Mean-value analysis of closed multi-chain queueingnetworks,J.ACM,vol.27,p.313-322,1980)可被用于从m个同时存在的用户到m+1个同时存在的用户,递归地计算系统的平均延迟。

根据上面的响应时间公式,可应用统计推理技术搜索最佳的一组参数,以致所得到的性能最接近于测量的性能,这里两个不同性能度量之间的距离可以是一般的,例如跨越不同组件或类别的加权平均。

例如,对于开放排队网络推理问题来说,根据关于所有工作类别的端到端响应时间的先前闭合式表达式,我们得到用于建模的下述类属优化公式表示(即等式615):

最小距离度量(测量的响应时间,预测的响应时间)

mins距离度量(Rjm,Rje)约束于

>sup>>R>j>esup>>=>>Σ>>i>=>1>>I>>>>S>ij>>>1>-sup>>ρ>i>msup>>>>,>∀>j>>s>

>sup>>ρ>i>msup>>->>Σ>>j>=>1>>J>>>λ>j>>>S>ij>>≤>>ϵ>i>>,>∀>i>>s>

>sup>>ρ>i>msup>>->>Σ>>j>=>1>>J>>>λ>j>>>S>ij>>≥>->>ϵ>i>>,>∀>i>>s>

Sij≥0,i,j

存在满足上述等式的数个Sij值。为了优化该解答,选择使测得的端到端响应时间Rjm和预测的/计算的端到端响应时间Rje之间的距离降至最小的Sij的值。

在封闭排队网络模型的情况下,可类似地用公式表示推理问题,这种情况下将应用和用于封闭排队网络的MVA算法对应的一组不同约束条件。

另一方面,如果不存在闭合式表达式或分析近似,那么本发明可依赖于离散事件模拟器611以及一组巨集式启发式(meta-heuristic)搜索方法613(包括各种tabu搜索和/或模拟退火算法)搜索一组最佳参数。在F.Glover和M.Laguna的Tabu Search,Kluwer,Boston,1997;D.S.Johnson,C.R.Aragon,L.A.McGeoch和C.Schevon等的Optimization by simulated annealing:an experimental evaluation,Operations Reasearch,vol.37,p.865-892,1989中可找到关于这些算法的更多细节。

图6表示了本发明的一套方法600的一种实现。方法600包括三个关键模块601、603和605。每个模块执行使建模过程的自动化成为可能的不同方法。一般来说,模块601执行系统配置和/或工作量表征功能;模块603实现建模功能(本发明的一个关键方面);模块605可实现成本分析和性能预测功能。每个模块可以是可由计算机执行,以创建例如如图8所示的模型的软件模块或者一组算法。

如图6中所示,模块601可执行两个初始步骤:(i)理解系统结构和事务流程;和(ii)表征峰值工作量。

在图6中图解说明的实施例中,模块601应用系统结构和事务流程的基本知识。模块601还包括通过分析服务器日志,自动表征工作量的语法分析和剖析(profiling)引擎601。日志包含输入服务器的所有HTTP请求的事件记录。模块601处理原始日志,获得该信息,并按照HTTP请求的行为,把HTTP请求群集成组。不同群集中的请求在请求类型(例如静态对动态);事务发生的速率,和处理请求所需的时间等方面存在不同。

模块603随后把系统结构映射到类属服务器网络中。不同的请求群集(源于剖析)被映射到根据事务流程遍历排队网络的不同工作类别,同时每种类别在不同的服务器具有不同的到达速率和不同的服务要求。由于在每个服务器,这些类别的服务要求未知,因此本发明的系统必须通过训练可获得的数据集,了解这些未知因素,所述可获得的数据集包括常见并且廉价的测量结果,例如系统通过量,服务器的利用率和端到端响应时间。模块603利用排队等式和最佳化公式表示615,并依赖于解算机617推断未知的服务要求参数。可使用一部分数据集训练模型,并使用剩余的数据集验证模型。事实上,当能够获得更多的测量结果时,可重复上述学习程序,并且能够细化模型。当验证结果令人满意并且稳定时,随后完整地产生性能模型。从而,获得有效的性能模型就是获得最佳的推断参数。

一旦建立了有效的性能模型,那么上述闭合式等式或递归均值分析算法可被用于预测性能,优化现有的IT基础结构,并通过部署和操作提出费用低廉的结构设计。这些功能可在图6中的模块605中实现。

例如,为了预测不同工作量下的性能(比方说预期的未来商业增长下的预测负载),输入负载可被代入分析排队公式(等式615)或者可被馈入模拟器611。等式615或模拟器611的输出随后表示在预测负载下,预期的延迟和资源利用率。根据输出性能度量和资源利用率度量,本发明的系统可确定针对当前的基础结构,对于每种服务可传递的服务质量等级,以及系统的瓶颈的位置等。

类似地,来自模块603的推理模型可被用于理解可缩放性,并分析一系列的假设情况。例如,为了回答“如果前端服务器容量被加倍,那么怎么样”的问题,只需要据此修改排队公式615,或者在模拟器617中调整对应的服务器速度,等式615或模拟器617的输出将立即提供答案。

在现在的电子商务环境中,对于IT规划人员来说,重要的是使经济因素与容量联系起来。模块605还能够提供量化成本-性能折衷的成本分析功能613。根据提供电子商务基础结构的总成本和容量利用率,能够计算每个事务的成本,每个服务的成本和支持每个客户的成本。

实现

本节介绍根据未命名的商业网站的测试,利用本发明进行研究的情况。本发明可用于对商业网站的测试环境建模。参见图7,可在隔离的测试环境中建立网站701的副本。测试站点被认为是隔离的,因为它一般是实验室中具有合成负载的专用环境,所述专用环境与生产环境隔离。站点701包含两个独立的服务器群集。门户群集(portalcluster)703主要负责和认证相关的请求。和商业相关的请求由商业事务服务器群集705独立处理。在每个群集内,存在两层,前端服务器721-722,和后端数据库服务器723-724。输入站点的请求由负载均衡路由器,例如IBM的企业网络分配器(eND)707(例如参见G.Hunt,G.Goldszmidt,R.King和R.Mukherjee,Network dispatcher:Aconnection router for scalable Internet services,Proceedings of the7th International World Wide Web Conference,April,1998)或者来源于其它厂商的类似产品路由给一群前端服务器。eND 707按照加权循环方式路由请求,以便均匀地把负载分配给前端服务器721-722。处理后的页面通常被直接返回给客户机,而不必经过eND 707。

脚本可被用于按照能够容易地定制的某些比例,产生数种类型的事务。运行这些脚本,可建立许多负载驱动器(模仿全球的客户机710-712),以便在所需的水平一致地驱动负载。客户机710-712将被许多负载驱动器代替,每个负载驱动器产生合成通信。从而脚本可在这些负载驱动器机器上运行。如果系统中同时存在的用户的总数为m,那么认为该系统具有m个用户会话的负载。这可通过由负载驱动器启动m个用户会话(通常开始时间被稍微展开)来实现。每个会话遵循脚本中预先规定的一系列页面请求。一旦该系列中的所有请求都被执行,那么用户进入睡眠模式,持续给定的一段时间(思考时间),随后开始新的循环,以便再次执行脚本。

在测量了前端服务器721-722和后端服务器723-724的通过量之后,Web负载驱动器收集服务器303、305的每个类别的响应时间统计信息,包括它们的均值和方差。根据两组服务器上一组不同的工具,可获得聚集利用率测量。

参考图7说明的系统可被模拟成封闭排队网络800,如图8中所示。在图8中,网络831对应于图7中的因特网731;网络分配器807对应于eND 707;防火墙809对应于防火墙709;服务器821-824对应于服务器721-724。

通过利用前一节中提出的高级建模方法,Web服务结构中的每个服务器可被看作具有许多类属服务器(或者CPU)的服务站。为了捕捉计算环境中的多线程处理,安全的是假定这些类属服务器正在按照处理器共享(PS)规程服务于各个作业。

由于在防火墙809和网络831引起的延迟同样不可忽略,因此这样的延迟效应被模拟成延迟服务器。另外还假定防火墙809和网络831具有恒定的延迟,以便聚焦于Web服务器821-824的性能。事实上,在理想的测试环境中,情况通常就是这样,在理想的测试环境中,测试系统通常和“load runner”(或者合成负载发生器)驻留在相同的本地网络内。另一延迟中心807被用于代表两个连续事务之间的用户思考时间(或者空闲时间)。

利用m个同时存在的用户会话,把系统性能定义为在m个用户在网络中循环,每个用户反复遵循一系列的请求的条件下,封闭排队网络的稳态性能。依据每种请求类型,在每层的资源要求的部分(fraction)可被看作判定变量。注意不是所有的请求都需要位于后端服务器的服务。从建模的观点来看,当这样的请求经过后端服务器时,这对应于0服务时间。

图8中所示的封闭排队网络是对称的。这是因为所有延迟中心(即,eND 807,防火墙809,思考时间807和网络831)可被看作无限的服务器中心,而Web服务器721-724被模拟成PS中心(即按照处理器共享规程)。于是,这种对称的封闭排队网络的固定分布应具有product形式(参见F.P.Kelly,Reversibility and StochasticNetworks,Wiley,Chichester,1994;R.W.Wolff,Stochastic Modelingand the Theory of Queues,Prentice Hall,1989)。product形式网络的均值(MVA)算法随后可被用于从m个同时存在的用户到m+1个同时存在的用户递归计算系统的平均延迟。

考虑当封闭排队系统700中存在m个用户时的情况。利用下面的符号,

I:=服务站的数目;

yi:=用户访问站i的次数;

Si:=站i的请求的平均服务时间;

λi(m):=发往站i的请求的到达速率;

Ri(m):=站i的请求的平均响应时间;

Li(m):=站i的请求的平均数目;

ρi(m):=服务站i的利用率水平;

T(m):=经过一个周期的单个用户的总响应时间。

系统通过量从而等于1/T(m)。可如下计算请求的到达速率和总的响应时间:

>>T>>(>m>)>>=>>Σ>>i>=>1>>I>>>y>i>>·>>R>i>>>(>m>)>>,>>s>

λi(m)=m·yi/T(m),

可如下(根据Little′s Law)计算在某一服务站,请求的平均数目:

Li(m)=λi(m)Ri(m)  i=0,1,...,I。

作为上述MVT的基础的到达定理表明当某一作业到达某一服务站时,该作业“看到”的客户的数目等于当网络少一个作业时,该服务站的平均队列长度。即,

Ri(m+1)=Si·[1+Li(m)],i=1,...,I。

于是,假定所有服务要求Si已知,通过在初始条件Li(0)=0,i=1,...I的情况下,递归地利用上述等式,可从m个用户情景到m+1个用户情景计算平均值Li(m),Ri(m)和T(m),i=1,...,I,依次类推。称为MVA算法的递归程序可总结成如下所示:

1.令m=1

2.计算每个类别系统通过量λi(m)

计算每个类别系统待办事项(backlog)Li(m)

应用Little′s定律,获得每个类别每个服务器响应时间Ri(m)

3.用m+1代替m,并返回步骤2

一般的欧几里得距离可被用作测量的端到端响应时间和预测的端到端响应时间之间的差的度量,这里通过上述MVA算法获得预测的响应时间。随后使用优化问题(即图6中的等式615)查找服务时间参数,以致所述距离被降至最小。如前所述,利用解算机617求解非线性优化问题,从而获得每个类别的服务时间要求。

虽然关于单个实施例说明了本发明,但是本领域的普通技术人员会认识到在附加权利要求的精神和范围内,可利用各种修改实践本发明。

此外,注意申请人的意图是包含所有权利要求要素的等同物,即使以后在实施过程中被修改。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号