CN101044463B - 用于监视客户端-服务器架构的性能的方法和系统 - Google Patents
用于监视客户端-服务器架构的性能的方法和系统 Download PDFInfo
- Publication number
- CN101044463B CN101044463B CN200480044270.7A CN200480044270A CN101044463B CN 101044463 B CN101044463 B CN 101044463B CN 200480044270 A CN200480044270 A CN 200480044270A CN 101044463 B CN101044463 B CN 101044463B
- Authority
- CN
- China
- Prior art keywords
- server
- request
- client
- final user
- time
- 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
Links
- 238000012544 monitoring process Methods 0.000 title claims abstract description 8
- 238000000034 method Methods 0.000 title claims description 51
- 230000004044 response Effects 0.000 claims abstract description 44
- 230000014509 gene expression Effects 0.000 claims description 14
- 238000000605 extraction Methods 0.000 claims description 13
- 238000004088 simulation Methods 0.000 claims description 12
- 239000000284 extract Substances 0.000 claims description 7
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 235000014510 cooky Nutrition 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010960 commercial process Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
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/3419—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 by assessing time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5009—Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/0858—One way delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- 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/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/87—Monitoring of transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/875—Monitoring of systems including the internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
Abstract
本发明涉及共同地采用以下部件的结构:代理部件,安装在客户端-服务器架构的服务器侧部分,用于模拟客户端-服务器架构的实际客户端的请求,并且测量服务器执行时间,所述服务器执行时间表示在服务器部件接收到模拟的最终用户请求与所述服务器部件生成所述模拟最终用户请求的结果之间经过的时间;存储在服务器日志文件中的关于命中端到端(e2e)响应时间的信息,即,最终用户向服务器部件发送请求的时刻与请求结果到达最终用户的时刻之间经过的时间;根据服务器执行时间和命中e2e响应时间,可以确定由于将客户端-服务器架构的服务器侧部分连接到客户端侧部分的网络而造成的延迟。然后,使用网络延迟和服务器执行时间,通过将网络相关问题与服务器相关问题区分开来、甚至与客户端相关问题区分开来,从而监视客户端-服务器架构的性能。
Description
技术领域
本发明涉及用于监视客户端-服务器架构的性能的技术。更具体地说,本发明涉及用于监视包括基于web的事务服务器或者其他事务服务器的客户端-服务器架构的操作的方法和系统。
背景技术
存在不同的方法来帮助公司测试其基于web的事务服务器和相关联应用的性能和功能。
文献US 2003-0131052描述了一种用于收集页面停留时间(time-on-page)的统计信息的方法、系统、设备和计算机程序产品。当服务器接收到对Web页面的请求时,服务器生成或者检索出该Web页面,然后通过向该Web页面插入脚本来指示该Web页面收集页面停留时间的度量,之后将该Web页面返回进行请求的客户端。浏览器处理该Web页面,解析嵌入的脚本;该脚本限定当浏览器确定加载不同Web页面时被评估的函数。然后浏览器呈现该Web页面,但是,当卸载该Web页面时,调用所述函数;该函数计算表示浏览器呈现所述Web页面的时间量的时间值。随后该函数将计算出的时间值返回给服务器作为页面停留时间的度量值。
文献US-B-6,449,739描述了一种使得用户可以监视基于web的事务服务器或者其他事务服务器的后期部署(post-deployment)性能的监视系统。该系统包括:代理部件(“代理”),其可以安装在可以访问事务服务器的计算机(“代理计算机”)上,所述计算机包括事务服务器的实际用户的计算机。所述代理对事务服务器的实际用户的行为进行模拟,同时监视服务器的性能。通过利用控制器部件(“控制器”)而调配给代理计算机的测试例来指定代理计算机要进行的特定事务。当各个代理计算机执行测试例时,其将执行结果(性能数据)实时地报告给基于web的报告服务器,该报告服务器将所述结果存储在中央数据库中。得到授权的人员可以使用标准网络浏览器来访问报告服务器以查看由一系列定制报告收集的性能数据。
此外,文献US-B-6,411,998描述了一种确定与来自可连接到Web服务器的Web客户端的请求相关联的因特网延迟的方法。该方法响应于第一HTTP请求而在Web服务器处启动。具体来说,Web服务器提供对于第一HTTP请求的响应,并记录与提供该响应相关联的服务器处理时间。在将响应送回发起请求的Web客户端之后,在Web客户端处计算与第一HTTP请求相关联的最终用户响应时间。在新HTTP请求(通常为下一个HTTP请求)时,此时从Web客户端以小甜饼(cookie)形式将与第一HTTP请求相关联的最终用户响应时间传送到Web服务器。然后,通过从最终用户响应时间中减去服务器处理时间来计算与第一HTTP请求相关联的因特网延迟。
此外,在“Web log analysis for performance troubleshooting”EuroCMG-2002 Proceedings,2002年6月中,描述了一种Web性能日志分析(WPLA)行为,其使得可以从web服务器的日志文件中提取一组对于性能分析有用的信息。Web服务器日志可以被配置为记录对于性能分析非常有用的可选值,即,花费时间字段,该字段测量从服务器开始管理请求的时刻直到客户端确认了接收到最末字节所花费的时间。作者已发现存储在花费时间字段中的值是各个用户等待完成各个命中(hit)的时间(即,命中的端到端响应时间)的良好近似。
发明内容
申请人已经观察到,通过将网络相关问题与服务器相关问题区分开来、甚至与客户端相关问题区分开来,对客户端-服务器架构的性能的监视存在问题(例如,在服务器执行时间和端到端响应时间方面)。
申请人进一步观察到,对客户端-服务器架构的性能的监视因避免以下情况而存在其他问题:
-安装客户端侧代理;
-修改最终用户请求的代码;以及
-增加网络通信量。
实质上,本申请人已经发现,通过如下的结构可以解决这些问题,所述结构一起采用如下部件:
-代理部件,安装在客户端-服务器架构的服务器侧部分,用于模拟客户端-服务器架构的实际客户端的请求,并且测量服务器执行时间,所述服务器执行时间表示在服务器部件接收到模拟最终用户请求(也称为命中)与在所述服务器部件处生成所述模拟最终用户请求的结果之间经过的时间;
-存储在服务器日志文件中的关于命中端到端(e2e)响应时间的信息,即,最终用户向服务器部件发送请求的时刻与请求结果到达最终用户的时刻之间经过的时间;
根据服务器执行时间和命中e2e响应时间,可以确定由于将客户端-服务器架构的服务器侧部分连接到客户端侧部分的网络而造成的延迟。然后,使用网络延迟和服务器执行时间,通过将网络相关问题与服务器相关问题区分开来、甚至与客户端相关问题区分开来,从而监视客户端-服务器架构的性能。
除了其他方面之外,本申请人已经确定,通过在位于服务器部件附近的代理部件中模拟实际客户端的请求、并且基于服务器部件提供给代理部件的实际响应来测量服务器执行时间,可以按不侵入的方式(即,在不改变服务器部件的软件的情况下)来监视服务器执行性能。
更具体地说,本申请人已经发现,可以通过一种用于监视客户端-服务器架构的性能的方法来解决该问题,所述客户端-服务器架构包括经由网络连接在一起的客户端侧部分和服务器侧部分,所述客户端侧部分包括至少一个最终用户终端,所述服务器侧部分至少包括服务器部件,所述方法包括以下步骤:
-通过安装在所述服务器侧部分中的代理部件来模拟至少一个最终用户终端请求并将其发送给所述服务器部件;
-在所述服务器部件处对所述至少一个被模拟请求进行处理并生成对应的结果;
-测量服务器执行时间,其表示在所述服务器部件处接收到所述被模拟最终用户请求与在所述服务器部件处生成所述被模拟最终用户请求的结果之间经过的时间;
-从保存在所述服务器部件中的日志文件中提取包含如下项的条目,所述项表示在最终用户终端向所述服务器部件发送请求与所述请求的结果到达所述最终用户终端之间经过的命中e2e响应时间;
-根据所述服务器执行时间和所述命中e2e响应时间,对于所述至少一个被模拟请求确定由网络引起的网络延迟。
本发明的另一方面涉及一种用于监视客户端-服务器架构的性能的系统,所述客户端-服务器架构包括经由网络连接在一起的客户端侧部分和服务器侧部分,所述客户端侧部分包括至少一个最终用户终端,所述服务器侧部分至少包括服务器部件,
所述系统包括:
-至少一个代理部件,其安装在所述服务器侧部分中,所述代理部件被配置成进行以下操作:
-模拟至少一个最终用户终端请求并将其发送给所述服务器部件,所述至少一个被模拟请求在所述服务器部件处得到处理以生成对应的结果;
-测量服务器执行时间,所述服务器执行时间表示在所述服务器部件处接收到所述被模拟最终用户请求与在所述服务器部件处生成所述被模拟最终用户请求的结果之间经过的时间;
-至少一个日志提取器,其被配置成利用所述服务器部件来产生包括如下条目的日志文件,所述条目包含表示在最终用户终端向所述服务器部件发送请求与所述请求的结果到达所述最终用户终端之间经过的命中e2e响应时间的项;
-至少一个控制器,其被配置成进行以下操作:
-根据所述服务器执行时间和所述命中e2e响应时间,对于所述至少一个被模拟请求确定由网络引起的网络延迟。
根据本发明的另一方面,提供了一种用于监视客户端-服务器架构的性能的方法,所述客户端-服务器架构包括经由网络连接在一起的客户端侧部分和服务器侧部分,所述客户端侧部分包括至少一个最终用户终端,所述服务器侧部分至少包括服务器部件,
所述方法包括以下步骤:
-向所述服务器部件发送至少一个最终用户终端请求;
-在所述服务器部件处对所述至少一个请求进行处理并生成对应的结果;
-通过安装在所述服务器侧部分中的代理部件来测量服务器执行时间,所述服务器执行时间表示在所述服务器部件处接收到所述最终用户请求与在所述服务器部件处生成所述最终用户请求的结果之间经过的时间;
-从保存在所述服务器部件中的日志文件中提取包含如下项的条目,所述项表示在最终用户终端向所述服务器部件发送请求与所述请求的结果到达所述最终用户终端之间经过的命中e2e响应时间;
-根据所述服务器执行时间和所述命中e2e响应时间,对于所述至少一个请求确定由网络引起的网络延迟。
在本发明的另一方面中,提供了一种用于监视客户端-服务器架构的性能的系统,所述客户端-服务器架构包括经由网络(10)连接在一起的客户端侧部分和服务器侧部分,所述客户端侧部分(1a)包括至少一个最终用户终端(20),所述服务器侧部分(1b)至少包括服务器部件(40a),
所述系统包括:
-至少一个代理部件(70a),其安装在所述服务器侧部分(1b)中,所述代理部件(70a)被配置成进行以下操作:
-向所述服务器部件(40a)发送至少一个最终用户终端请求,所述至少一个最终用户终端请求在所述服务器部件(40a)处得到处理以生成对应的结果;
-测量服务器执行时间(Te),所述服务器执行时间(Te)
表示在所述服务器部件(40a)处接收到所述最终用户请求与在所述服务器部件(40a)处生成所述最终用户请求的结果之间经过的时间;
-至少一个日志提取器(70b),其被配置成利用所述服务器部件(40a)来产生包括如下条目的日志文件,所述条目包含表示在最终用户终端(20)向所述服务器部件(40a)发送请求与所述请求的结果到达所述最终用户终端(20)之间经过的命中e2e响应时间(208)的项(124);
至少一个控制器(70c),其被配置成进行以下操作:
-根据所述服务器执行时间(Te)和所述命中e2e响应时间(208),对于所述至少一个请求确定由网络(10)引起的网络延迟(Tn)。
本发明的另一方面涉及包括这种系统的客户端-服务器架构、以及计算机程序产品,所述计算机程序产品可以加载到至少一个计算机的存储器中并且包括软件代码部分,当在计算机上运行该产品时,所述软件代码部分执行本发明的方法的步骤。如在此所使用的,提到这种计算机程序产品旨在等同于提到包含用于控制计算机以配合执行本发明的方法的指令的计算机可读介质。提到“至少一个计算机”显然旨在强调按分布式/模块化方式来实现本发明的可能性。
在从属权利要求和以下说明中描述了本发明的进一步优选的方面。
附图说明
现在参照附图仅以示例的方式来描述本发明,在附图中:
图1示出了本文所述的本发明的实施例的框架;
图2示出了web服务器日志文件格式的示例;
图3示出了web服务器日志文件格式的另一示例;
图4是例示出如何计算命中e2e响应时间与web服务器日志文件的花费时间字段之间的关系的简化时序图;
图5示出了命中e2e响应时间、网络时间和服务器执行时间相对于时间的示例;
图6是本文所述的本发明使用的监视方法的流程图;
图7是图6的监视方法的一部分的流程图;
图8是图6的监视方法的另一部分的流程图;以及
图9示出了本文所述的本发明的示例性实施例。
具体实施方式
以下的说明阐述了监视系统及相关方法的多个实现具体细节。提供这些细节是为了例示本发明的优选实施例,而不是限制本发明的范围。
在整个说明书中,假设被监视的事务服务器是基于web的系统,可以通过因特网对其进行访问。然而,应该认识到,本发明的方法也可以用于监视其他类型的事务服务器,包括使用专有协议的或者只能由特定组织的内部用户访问的事务服务器。
图1示出了客户端-服务器架构1的示例性实施例,其包括通过第一网络10(即,因特网)连接在一起的客户端侧部分1a和服务器侧部分1b。
客户端侧部分1a包括至少一个、通常是多个最终用户终端20,例如个人计算机、个人数字助理(PDA)、无线电话等。各个最终用户终端20支持相应的网络浏览器30(代表性浏览器可以包括MicrosoftInternet Explorer、NetscapeNavigator等)。
在本发明的优选实施例中,服务器侧部分1b包括通过第二网络50(例如LAN)连接到后端数据库(在图1中,用标为60的单块来表示)的事务服务器40。
对于本说明书,术语“事务服务器”表示对至少来自用户的对于执行一个或更多个任务或者“事务”(例如查看帐户信息,下订单,进行搜索、查看和发送电子邮件,从网络门户下载数据(例如mp3文件、视频等))的请求进行响应的系统。
如图1所示,事务服务器40可以包括web服务器部件40a以及一个或更多个应用服务器40b。应用服务器40b例如可以提供用于实现一个或更多个商业处理(例如建立用户帐号、下订单等)的功能。应用服务器40b通常向用户提供对一个或更多个后端数据库60的访问。
web服务器部件40a包括web服务器日志文件40c,web服务器部件40a将与最终用户终端20接收到的web页面相关联的每一个请求(也称为命中)按照web服务器日志文件40c中的每一个条目表示单个命中的方式存储在web服务器日志文件40c中。由于web页面是由多个“对象”(例如文本、图片、脚本代码等)组成的,所以在完全下载web页面之前,将分别与单个对象相关联的若干个后续请求发送到web服务器部件40a。这意味着下载web页面的操作在web服务器日志文件40c上产生多于一个的条目。对于web服务器日志文件,存在标准的公共格式。图2所示的示例性格式对于每一个条目可以包括以下字段:
-IP地址110,
-URL(如果记入日志)112,
-日期114,
-时间116,
-行为(通常是获取(GET)或者张告(POST)行为)118,
-Html错误码120,以及
-大小122。
参照图3,通过对其配置文件进行修改,web服务器部件40a可以被定制为向web服务器日志文件40c的每个条目添加另一字段,称为花费时间字段124。如在下文中更佳说明的,存储在花费时间字段124中的值是对命中e2e响应时间(即,最终用户终端20向web服务器部件40a发送请求的时刻与请求的结果到达最终用户终端20的时刻之间经过的时间)的很好近似。
回到图1,用于监视客户端-服务器架构1的性能的系统70与事务服务器40相关联。
具体来说,系统70至少包括代理部件70a,日志提取器70b和控制器70c。
具体来说,代理部件70a是根据本发明的适于安装在位于服务器侧部分1b中且在web服务器部件40a附近的主计算机上(或者,对于复杂的架构,安装在诸如反向代理的其他网络器件上)的模块。
这里,表述“附近”表示代理部件70a在其中运行的主计算机与web服务器部件40a具有高速(和/或专用)链路,从而无论这两个计算机之间的物理距离怎样,都可以按固定且短暂的延迟(优选为小于50 ms的延迟)在它们之间交换信息。
另选地,代理部件70a可以直接安装在web服务器部件40a上。
代理部件70a包括以下的基本功能:模拟事务服务器40的实际最终用户终端20的请求,并且对于各个被模拟请求测量服务器执行时间,即,代理部件70a向所述web服务器部件(40a)发送被模拟请求的时刻与代理部件(70a)接收到被模拟请求的结果的时刻之间经过的时间。
由于代理部件70a位于web服务器部件40a附近,所以代理部件70a测得的服务器执行时间不受网络延迟的影响,因此,该服务器执行时间与真实的服务器执行时间基本相等,即,web服务器部件(40a)接收到最终用户终端请求与web服务器部件(40a)生成最终用户终端请求的结果之间经过的时间。
对于本说明书,以上句子中的表述“基本相等”表示代理部件70a测得的服务器执行时间与真实服务器执行时间之间的差在50ms以下。
在本发明的优选实施例中,代理部件70a基于所谓的“记录和再现”范例。
具体来说,在主计算机上运行与安装在各个最终用户终端20上的web浏览器相同类型的web浏览器,以模拟由事务服务器40的实际最终用户终端20发送到web服务器部件40a的请求序列。
可以由控制器70c使用在下文中更佳地描述的准则来选择要由代理部件70a模拟的请求序列。
代理部件70a将由安装在主计算机上的网络浏览器模拟的每一个请求记录在例如脚本中。然后在监视处理的开始时使用该脚本来再现所记录的请求。也可以由代理管理员来手动地修改该脚本以概括其参数。当代理部件70a“再现”该脚本时,它也测量与各个被模拟请求相关联的服务器执行时间,并将其记录在主计算机的存储器(例如硬盘)中。
日志提取器70b是能够读取并提取存储在web服务器日志文件40c中的字段的模块。具体地说,对于来自最终用户终端20的每一个请求,日志提取器70b都从web服务器日志文件40c中提取字段的子集,例如:IP地址、日期、时间、URL、错误码、尺寸(大小)和花费时间。
如在上面已经提到的,存储在花费时间字段124中的值是对命中e2e响应时间(即,最终用户终端20向web服务器部件40a发送请求的时刻与请求的结果到达最终用户终端20的时刻之间经过的时间)的很好近似。
为了便于理解上述内容,在图4中例示了一时序图,其中:
-标号200表示从最终用户终端20产生的请求到达web服务器部件40a所花费的时间(GETt)。
-标号202表示该请求可能从web服务器部件40a传播到应用服务器40b之一、以及检索到的结果从该应用服务器40b传回web服务器部件40a分别花费的时间的总和(WEB SERVERt);
-标号204表示该请求从应用服务器40b到达所请求结果的源(例如,后端数据库60之一)所花费的时间、以及检索到的结果从后端数据库60到达应用服务器40b所花费的时间的总和(BACKENDt)。(数据库60在图4中应该在长方形40的外部,长方形40在其内部仅包含块40a和40b,以便与图1相符)。时间202和204之和对应于真实的服务器执行时间。
-标号206表示检索到的结果从web服务器部件40a到达最终用户终端20所花费的时间(DOWNLOADt)。
-标号208表示命中e2e响应时间(HITe2e)。具体地说,命中e2e响应时间是由下式给出的:
HITe2e=GETt+WEB SERVERt+BACKENDt+DOWNLOADt
-标号210表示来自最终用户终端20的确认到达web服务器部件40a所需要的时间(ACKt)。最终用户终端20在成功下载了web服务器部件40a发送的结果之后发送确认。
此外,花费时间240是从web服务器部件40a接收到请求开始、直到web服务器部件40a从最终用户终端20接收到关于该请求的结果已经到达最终用户终端20的事实的确认为止所经过的时间。具体地说,标号220表示评估花费时间的开始操作,标号230表示结束操作。具体地说,描述花费时间的公式是:
TIME TAKEN=WEB SERVERt+BACKENDt+DOWNLOADt+ACKt
花费时间与命中e2e响应时间208之差为
TIME TAKEN-HITe2e=GETt-ACKt
由于获得操作和确认操作都是从最终用户终端20到web服务器部件40a的简单短消息,所以它们很可能经历相同(或者近似相同)的路由并花费相似的时间而到达目的地。结果是:
GETt≈ACKt
因此
即,存储在花费时间字段124中的值是命中e2e响应时间208的良好近似。
再参照图1,控制器70c是一引擎,其通过配置其他两个部件70a、70b的行为来管理这两个部件,还收集并处理来自这两个部件70a、70b的数据以表征客户端-服务器架构1的性能。控制器70c还包括管理控制台,用于配置其他两个部件70a、70b,实质上在数据收集调度的角度来配置。具体地说,该管理控制台能够分析通过日志提取器40b从web服务器日志文件40c提取的字段的子集,并基于该分析而向代理部件70a传送要模拟的请求序列。具体地说,如果一请求具有特定特征并且尚未被代理部件70a模拟,则选择该请求以添加在代理列表中并且随后对其进行模拟。
优选地,控制器70c使用以下准则来选择要模拟的请求(命中):
-命中的大小(如在字节方面的大小):例如,控制器70c可以选择大小大于30 KB的命中,因为它们有可能具有扩大了可能的网络瓶颈的较高命中e2e响应时间。实际上,这些命中通常传送得较慢,对网络延迟产生很大影响;
-处理时间:以存储在花费时间字段124中的高时间值(例如大于等于8秒)进行命中较有可能具有高的服务器响应时间,因此它们被控制器70c选择;以及
-没有存在于web服务器部件40a的高速缓存中的命中。
相反,控制器70c可能排除在web服务器部件40a的高速缓存中存在的命中,因为其服务器执行时间不重要。
选择要模拟的请求是控制器70c启动对代理部件70a的测量的初始步骤,但是它也是控制器70c执行的被调度的周期性行为(例如一星期一次),从而跟踪用户访问、服务器修改等的变化。事务服务器管理员也可以选择要模拟的请求或者向代理列表添加其他相关请求。
代理列表的大小通常是有限的,以避免必须处理被模拟请求的web服务器部件40a上的高计算负担。为此,每次向代理列表添加新的相关请求时,都删除相关性较小的请求。例如,可以由服务器管理员对于各个特定情况来限定代理列表的大小。例如,代理列表可以包括数量为10与20之间的请求,通常是在与被最多请求的web页面或者被服务器管理员认为重要的页面相关联的请求中选择的。
接下来,控制器70c询问代理部件70a和日志提取器70b以对每一个被模拟请求收集在其脚本再现期间由代理部件70a测得的服务器执行时间Te、以及从web服务器日志文件40c提取的花费时间字段124。控制器70c按由事务服务器管理员限定的采样周期(例如每分钟)询问代理部件70a和日志提取器70b。然后处理代理部件70a和日志提取器70b获得的数据,以对每一个被模拟请求确定网络时间Tn,即,第一网络将请求从web服务器部件40a发送到最终用户终端20所花费的时间。对于长距离连接,该时间可能强烈影响命中e2e响应时间208。通常,网络时间根据以下方面而上升/增加:
-命中的尺寸(按字节)(命中越大,延迟就越长);
-连接的速度(连接越快,延迟就越短)。
具体地说,对于各个被模拟请求,可以通过从存储在花费时间字段124中的命中e2e响应时间208中减去代理部件70a测得的服务器执行时间Te来计算网络时间Tn。
在图5中对此进行图形说明。具体地说,网络时间Tn是用标号310和320表示的两条曲线之间的区域,这两条曲线分别是在一天中命中e2e响应时间208和服务器执行时间Te的可能时间特性的示例(横轴为小时)。
例如,对于给定的IP地址、日子和命中,控制器70c可以将一个小时内的平均网络时间Tn确定为日志提取器70b在该小时内提取的所有花费时间字段124的平均值减去在该小时内代理部件70a测得的所有服务器执行时间Te的平均值。
网络时间Tn和服务器响应时间Te是客户端-服务器架构1的性能的指标,控制器70c可以使用这些指标来将网络相关问题与服务器相关问题区分开来,甚至与客户端相关问题区分开来,如在图6至8所示的流程图中所更好地说明的。
参照图6的流程图,在步骤400,由控制器70c识别要模拟的请求序列,启动代理部件测量。在步骤402,控制器70c询问代理部件70a和日志提取器70b,以分别为每一个所模拟的请求收集测得的服务器执行时间Te和花费时间字段124。
在步骤404,确定(例如一个小时内的)平均网络时间Tn特性,并且评估网络性能(如在下文中更好地说明的)。
在步骤406,确定(例如一个小时内的)平均服务器执行时间Te特性趋势,并且评估服务器性能(如在下文中更好地说明的)。
在步骤408,分析网络性能和服务器性能。如果网络性能和服务器性能良好,则方法继续到步骤410,否则方法继续到步骤412。
在步骤410,向事务服务器管理员给出总体性能良好的信息。
在步骤412,向事务服务器管理员给出总体性能不佳的信息:存在网络或/和服务器问题。
在这两种情况下,该方法都可继续到步骤414。在该步骤,控制器70c可以使用上述准则来提炼(refine)所识别的请求序列,并回到开始处。
图7详细示出了将网络时间Tn可能用于监视网络相关问题或者与不良应用访问链路或单个最终用户终端20相关的问题。具体地说,在步骤416,计算与具有同类请求的所有IP地址相关的网络时间Tn。在步骤418,验证是否所有(或者实质性部分)的被监视IP地址都具有最佳性能。例如,可以通过将对于各个被监视IP地址计算出的网络时间Tn与阈值(例如2秒)进行比较来验证所有(或者实质性一部分)的被监视IP地址的最佳性能。如果所有(或者实质性部分)的被监视IP地址的相关网络时间Tn都在所述阈值以下,则该方法继续到步骤420,否则该方法继续到步骤422。在步骤420,向事务服务器管理员给出网络性能良好的信息。在步骤422,例如,通过将针对各个被监视IP地址计算出的网络时间Tn与阈值进行比较,来验证是否所有的被监视IP地址性能不佳。如果所有(或者实质性部分)的被监视IP地址的相应网络时间Tn都在所述阈值以上,则在步骤424向事务服务器管理员给出应用访问链路不佳的信息。
如果该条件并不是对于所有IP地址都满足,则该方法继续到步骤426。在步骤426,验证在性能不佳的IP地址附近是否存在性能同样不佳(即,相应的网络时间Tn在阈值之上)的IP地址。对于本发明,表述“附近”表示IP可以位于性能不佳的IP地址的相同子网或网络或LAN中。
如果不满足该条件,则方法继续到步骤428,在步骤428辨认出单个最终用户终端问题,并向事务服务器管理员发送通知消息。
如果性能不佳的“附近”IP地址的条件成立,则该方法继续到步骤430。在步骤430,向事务服务器管理员给出关于网络问题的信息。
图8详细示出了将服务器响应时间Te可能用于监视服务器相关问题。在步骤432,由代理部件70a测量特定被模拟请求的服务器执行时间Te。在步骤434,验证服务器执行时间Te是否在阈值(例如8秒)之上。如果该条件不满足,则该方法继续到步骤436,否则该方法继续到步骤438。在步骤436,向事务服务器管理员给出服务器执行响应时间良好的信息。
在步骤438,验证在web服务器部件40a/应用服务器40b或者后端数据库60上的硬件/软件资源利用是否存在瓶颈。如果该条件不满足,则该方法继续到步骤440,否则该方法继续到步骤442。在步骤440,向事务服务器管理员给出关于服务器(应用)问题的信息(例如可能出现了错误配置)。在步骤442,验证表示硬件/软件资源利用和相应的命中分布的曲线是否具有相同的特性。如果该条件不满足,则该方法继续到步骤440,否则该方法继续到步骤444。在步骤444,向事务服务器管理员给出指示:升级事务服务器40的硬件并优化其软件配置。
这里描述的设置具有以下优点。
首先,其使得可以在不增加网络通信量的情况下监视客户端-服务器架构的性能。
此外,通过简单地将代理部件安装在要监视的事务服务器附近,可以按不侵入且容易的方式(如,不修改任何客户端请求码)持续地详细监视所有的客户端-服务器架构,包括详细监视使用事务服务器的所有客户端的性能。
最后,很明显,可以对本文所述的设置进行多种修改和变化,它们全部落入如所附权利要求限定的本发明概念的范围内。
例如,本发明也可以应用于不是基于web的服务器,只要它们与格式同图3所示的日志记录基本相似的日志文件相关联即可。
此外,最终用户可以对各个请求设置服务级别协议(SLA),如果不满足SLA就选择相关动作(如发送电子邮件等)。可以对命中e2e响应时间或者网络时间或者服务器执行时间设置SLA。在这种情况下,监视系统向相关最终用户发送不满足SLA的信息。
这里所述的设置也可以用于更一般的数据中心监视系统(如图9所示),以识别出服务器相关问题并将其与网络相关问题区分开来。
该数据中心监视系统可以基于如下的管理员/服务器架构:其中由管理员控制台501监视服务器500,管理员控制台501能够收集关于服务器500的特性的数据(硬件资源利用、网络连接、可用性)以提供对服务器架构性能的深度分析。
根据本发明,可以将系统70安装在要监视的一个或更多个服务器500附近。
借助其功能,系统70能够进行以下操作:
-如果e2e响应时间超过限定的警告阈值,则发送警告(在HW电力不足、网络问题、网络过载和服务器过载之间进行辨别);
-如果网络时间(内联网/外联网)在阈值(例如8秒)之上,则发送警告;
-与用户负载相关地提供关于服务器性能特性的更详细信息。
Claims (11)
1.一种用于监视客户端-服务器架构(1)的性能的方法,所述客户端-服务器架构(1)包括经由网络(10)连接在一起的客户端侧部分(1a)和服务器侧部分(1b),所述客户端侧部分(1a)包括至少一个最终用户终端(20),所述服务器侧部分(1b)至少包括服务器部件(40a),
所述方法包括以下步骤:
-通过安装在所述服务器侧部分(1b)中的代理部件(70a)来模拟至少一个最终用户终端请求并将其发送给所述服务器部件(40a);
-在所述服务器部件(40a)处对所述至少一个被模拟请求进行处理并生成对应的结果;
-测量服务器执行时间(Te),其表示在所述服务器部件(40a)处接收到所述被模拟最终用户请求与在所述服务器部件(40a)处生成所述被模拟最终用户请求的结果之间经过的时间;
-从保存在所述服务器部件(40a)中的日志文件中提取包含花费时间值(124)的条目,所述花费时间值(124)表示从所述服务器部件(40a)接收由最终用户终端(20)向所述服务器部件(40a)所发送的请求起直到所述服务器部件(40a)接收到与所述请求的结果到达所述最终用户终端(20)的事实相关的确认所经过的时间,所述花费时间值是对命中e2e响应时间(208)的近似,所述命中e2e响应时间(208)是从最终用户终端(20)向所述服务器部件(40a)发送请求起直到所述请求的结果到达所述最终用户终端(20)所经过的时间;
-根据所述服务器执行时间(Te)和所述花费时间值(124),对于所述至少一个被模拟请求确定由网络(10)引起的网络延迟(Tn)。
2.根据权利要求1所述的方法,其特征在于,对每一个被模拟请求确定网络延迟(Tn)的所述步骤包括以下步骤:使用所述网络延迟(Tn)和所述服务器执行时间(Te),通过区分网络相关问题与服务器相关问题,来监视所述客户端-服务器架构(1)的性能。
3.根据权利要求1或2所述的方法,其特征在于,由所述代理部件(70a)测得的所述服务器执行时间(Te)是代理部件(70a)向所述服务器部件(40a)发送被模拟请求的时刻与所述代理部件(70a)接收到所述被模拟请求的结果的时刻之间经过的时间。
4.根据权利要求2所述的方法,其特征在于,使用所述网络延迟(Tn)和所述服务器执行时间(Te)来监视所述客户端-服务器架构(1)的性能的所述步骤包括以下步骤:
-提供第一阈值;
-将所述网络延迟(Tn)与所述第一阈值进行比较;以及
-如果所述网络延迟(Tn)在所述第一阈值之上,则给出关于网络相关问题的信息。
5.根据权利要求2所述的方法,其特征在于,使用所述网络延迟(Tn)和所述服务器执行时间(Te)来监视所述客户端-服务器架构(1)的性能的所述步骤包括以下步骤:
-提供第二阈值;
-将所述服务器执行时间(Te)与所述第二阈值进行比较;以及
-如果所述服务器执行时间(Te)在所述第二阈值之上,则给出关于服务器相关问题的信息。
6.根据权利要求1所述的方法,其特征在于,模拟最终用户终端请求的所述步骤包括以下步骤:将所述代理部件(70a)安装在位于所述服务器部件(40a)附近的主计算机中。
7.根据权利要求1所述的方法,其特征在于,模拟最终用户终端请求的所述步骤包括以下步骤:将所述代理部件(70a)安装在所述服务器部件(40a)上。
8.根据权利要求1所述的方法,其特征在于,模拟最终用户终端请求的所述步骤包括以下步骤:按照与各个请求相关联的大小和服务器执行时间中的至少一个,识别一组要模拟的最终用户终端请求。
9.一种用于监视客户端-服务器架构(1)的性能的系统,所述客户端-服务器架构(1)包括经由网络(10)连接在一起的客户端侧部分(1a)和服务器侧部分(1b),所述客户端侧部分(1a)包括至少一个最终用户终端(20),所述服务器侧部分(1b)至少包括服务器部件(40a),
所述系统包括:
-至少一个代理部件(70a),其安装在所述服务器侧部分(1b)中,所述代理部件(70a)被配置成进行以下操作:
-模拟至少一个最终用户终端请求并将其发送给所述服务器部件(40a),所述至少一个被模拟请求在所述服务器部件(40a)处得到处理以生成对应的结果;
-测量服务器执行时间(Te),所述服务器执行时间(Te)表示在所述服务器部件(40a)处接收到所述被模拟最终用户请求与在所述服务器部件(40a)处生成所述被模拟最终用户请求的结果之间经过的时间;
-至少一个日志提取器(70b),其被配置成利用所述服务器部件(40a)来产生包括具有如下花费时间值(124)的条目的日志文件,所述花费时间值(124)表示从所述服务器部件(40a)接收由最终用户终端(20)向所述服务器部件(40a)所发送的请求起直到所述服务器部件(40a)接收到与所述请求的结果到达所述最终用户终端(20)的事实相关的确认所经过的时间,所述花费时间值是对命中e2e响应时间(208)的近似,所述命中e2e响应时间(208)是从最终用户终端(20)向所述服务器部件(40a)发送请求起直到所述请求的结果到达所述最终用户终端(20)所经过的时间;
-至少一个控制器(70c),其被配置成进行以下操作:
-根据所述服务器执行时间(Te)和所述花费时间值(124),对于所述至少一个被模拟请求确定由网络(10)引起的网络延迟(Tn)。
10.根据权利要求9所述的系统,其特征在于,所述控制器(70c)被配置成使用所述网络延迟(Tn)和所述服务器执行时间(Te),通过区分网络相关问题与服务器相关问题,来监视所述客户端-服务器架构(1)的性能。
11.一种客户端-服务器架构系统(1),其包括经由网络(10)连接在一起的客户端侧结构(1a)和服务器侧结构(1b),所述客户端侧结构(1a)包括多个最终用户终端(20),所述服务器侧结构(1b)包括服务器部件(40a),其特征在于,所述客户端-服务器架构(1)系统的性能被根据权利要求9至10中的任一项所述的系统监视。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2004/011868 WO2006045322A1 (en) | 2004-10-20 | 2004-10-20 | Method and system for monitoring performance of a client-server architecture |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101044463A CN101044463A (zh) | 2007-09-26 |
CN101044463B true CN101044463B (zh) | 2010-08-18 |
Family
ID=34958969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200480044270.7A Expired - Fee Related CN101044463B (zh) | 2004-10-20 | 2004-10-20 | 用于监视客户端-服务器架构的性能的方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7933988B2 (zh) |
EP (1) | EP1803066B1 (zh) |
CN (1) | CN101044463B (zh) |
AT (1) | ATE540361T1 (zh) |
WO (1) | WO2006045322A1 (zh) |
Families Citing this family (125)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7587449B2 (en) * | 2005-02-25 | 2009-09-08 | Microsoft Corporation | Method and system for calculating performance metrics using backchannel messaging and information pattern matching |
CN101155079B (zh) * | 2006-09-26 | 2012-03-07 | 阿里巴巴集团控股有限公司 | 一种监控即时通讯服务器的方法、装置和系统 |
US20080209030A1 (en) * | 2007-02-28 | 2008-08-28 | Microsoft Corporation | Mining Web Logs to Debug Wide-Area Connectivity Problems |
US7877230B2 (en) * | 2007-03-15 | 2011-01-25 | Shunra Software Ltd. | System and method for attributing a portion of a response time to an element of a virtual network |
US8028090B2 (en) | 2008-11-17 | 2011-09-27 | Amazon Technologies, Inc. | Request routing utilizing client location information |
US7991910B2 (en) | 2008-11-17 | 2011-08-02 | Amazon Technologies, Inc. | Updating routing information based on client location |
US8447831B1 (en) | 2008-03-31 | 2013-05-21 | Amazon Technologies, Inc. | Incentive driven content delivery |
US7970820B1 (en) | 2008-03-31 | 2011-06-28 | Amazon Technologies, Inc. | Locality based content distribution |
US8533293B1 (en) | 2008-03-31 | 2013-09-10 | Amazon Technologies, Inc. | Client side cache management |
US8156243B2 (en) | 2008-03-31 | 2012-04-10 | Amazon Technologies, Inc. | Request routing |
US8601090B1 (en) | 2008-03-31 | 2013-12-03 | Amazon Technologies, Inc. | Network resource identification |
US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
US8321568B2 (en) | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
JP5104529B2 (ja) * | 2008-05-08 | 2012-12-19 | 富士通株式会社 | 分析支援プログラム、分析支援方法および分析支援装置 |
CN102027768B (zh) * | 2008-05-19 | 2014-04-23 | 爱立信(中国)通信有限公司 | 处理通信网络中的Enum查询 |
US7925782B2 (en) | 2008-06-30 | 2011-04-12 | Amazon Technologies, Inc. | Request routing using network computing components |
US9407681B1 (en) | 2010-09-28 | 2016-08-02 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US9912740B2 (en) | 2008-06-30 | 2018-03-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US8117306B1 (en) | 2008-09-29 | 2012-02-14 | Amazon Technologies, Inc. | Optimizing content management |
US7930393B1 (en) | 2008-09-29 | 2011-04-19 | Amazon Technologies, Inc. | Monitoring domain allocation performance |
US8316124B1 (en) | 2008-09-29 | 2012-11-20 | Amazon Technologies, Inc. | Managing network data display |
US8286176B1 (en) * | 2008-09-29 | 2012-10-09 | Amazon Technologies, Inc. | Optimizing resource configurations |
US8122124B1 (en) | 2008-09-29 | 2012-02-21 | Amazon Technologies, Inc. | Monitoring performance and operation of data exchanges |
US8051166B1 (en) | 2008-09-29 | 2011-11-01 | Amazon Technologies, Inc. | Service provider optimization of content management |
US7865594B1 (en) | 2008-09-29 | 2011-01-04 | Amazon Technologies, Inc. | Managing resources consolidation configurations |
US8065417B1 (en) | 2008-11-17 | 2011-11-22 | Amazon Technologies, Inc. | Service provider registration by a content broker |
US8521880B1 (en) | 2008-11-17 | 2013-08-27 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US8732309B1 (en) | 2008-11-17 | 2014-05-20 | Amazon Technologies, Inc. | Request routing utilizing cost information |
US8122098B1 (en) | 2008-11-17 | 2012-02-21 | Amazon Technologies, Inc. | Managing content delivery network service providers by a content broker |
US8073940B1 (en) | 2008-11-17 | 2011-12-06 | Amazon Technologies, Inc. | Managing content delivery network service providers |
US8060616B1 (en) | 2008-11-17 | 2011-11-15 | Amazon Technologies, Inc. | Managing CDN registration by a storage provider |
US8326973B2 (en) | 2008-12-23 | 2012-12-04 | Novell, Inc. | Techniques for gauging performance of services |
US8131842B1 (en) * | 2009-02-11 | 2012-03-06 | Charles Schwab & Co., Inc. | System and method for collecting and displaying information about many computer systems |
US7917618B1 (en) | 2009-03-24 | 2011-03-29 | Amazon Technologies, Inc. | Monitoring web site content |
US8756341B1 (en) | 2009-03-27 | 2014-06-17 | Amazon Technologies, Inc. | Request routing utilizing popularity information |
US8412823B1 (en) | 2009-03-27 | 2013-04-02 | Amazon Technologies, Inc. | Managing tracking information entries in resource cache components |
US8521851B1 (en) | 2009-03-27 | 2013-08-27 | Amazon Technologies, Inc. | DNS query processing using resource identifiers specifying an application broker |
US8688837B1 (en) | 2009-03-27 | 2014-04-01 | Amazon Technologies, Inc. | Dynamically translating resource identifiers for request routing using popularity information |
US8782236B1 (en) | 2009-06-16 | 2014-07-15 | Amazon Technologies, Inc. | Managing resources using resource expiration data |
US8397073B1 (en) | 2009-09-04 | 2013-03-12 | Amazon Technologies, Inc. | Managing secure content in a content delivery network |
US8433771B1 (en) | 2009-10-02 | 2013-04-30 | Amazon Technologies, Inc. | Distribution network with forward resource propagation |
US8331370B2 (en) | 2009-12-17 | 2012-12-11 | Amazon Technologies, Inc. | Distributed routing architecture |
US8331371B2 (en) | 2009-12-17 | 2012-12-11 | Amazon Technologies, Inc. | Distributed routing architecture |
US9495338B1 (en) | 2010-01-28 | 2016-11-15 | Amazon Technologies, Inc. | Content distribution network |
JP4865068B1 (ja) * | 2010-07-30 | 2012-02-01 | 株式会社東芝 | 録再装置及び録再装置のタグリスト生成方法及び録再装置の制御装置 |
US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
US8930513B1 (en) | 2010-09-28 | 2015-01-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US9712484B1 (en) | 2010-09-28 | 2017-07-18 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
US8924528B1 (en) | 2010-09-28 | 2014-12-30 | Amazon Technologies, Inc. | Latency measurement in resource requests |
US8468247B1 (en) | 2010-09-28 | 2013-06-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
US10097398B1 (en) | 2010-09-28 | 2018-10-09 | Amazon Technologies, Inc. | Point of presence management in request routing |
US8577992B1 (en) | 2010-09-28 | 2013-11-05 | Amazon Technologies, Inc. | Request routing management based on network components |
US8938526B1 (en) | 2010-09-28 | 2015-01-20 | Amazon Technologies, Inc. | Request routing management based on network components |
US8819283B2 (en) | 2010-09-28 | 2014-08-26 | Amazon Technologies, Inc. | Request routing in a networked environment |
US9003035B1 (en) | 2010-09-28 | 2015-04-07 | Amazon Technologies, Inc. | Point of presence management in request routing |
US8452874B2 (en) | 2010-11-22 | 2013-05-28 | Amazon Technologies, Inc. | Request routing processing |
CN102480390A (zh) * | 2010-11-30 | 2012-05-30 | 国际商业机器公司 | 用于系统监控的方法和装置 |
US9391949B1 (en) | 2010-12-03 | 2016-07-12 | Amazon Technologies, Inc. | Request routing processing |
US8626950B1 (en) | 2010-12-03 | 2014-01-07 | Amazon Technologies, Inc. | Request routing processing |
US8543868B2 (en) * | 2010-12-21 | 2013-09-24 | Guest Tek Interactive Entertainment Ltd. | Distributed computing system that monitors client device request time and server servicing time in order to detect performance problems and automatically issue alerts |
CN102043679A (zh) * | 2010-12-22 | 2011-05-04 | 北京中电普华信息技术有限公司 | 一种获取应用系统性能分析数据的方法与系统 |
US10467042B1 (en) | 2011-04-27 | 2019-11-05 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
US10021179B1 (en) | 2012-02-21 | 2018-07-10 | Amazon Technologies, Inc. | Local resource delivery network |
US9083743B1 (en) | 2012-03-21 | 2015-07-14 | Amazon Technologies, Inc. | Managing request routing information utilizing performance information |
US10623408B1 (en) | 2012-04-02 | 2020-04-14 | Amazon Technologies, Inc. | Context sensitive object management |
US9154551B1 (en) | 2012-06-11 | 2015-10-06 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
US9525659B1 (en) | 2012-09-04 | 2016-12-20 | Amazon Technologies, Inc. | Request routing utilizing point of presence load information |
US9323577B2 (en) | 2012-09-20 | 2016-04-26 | Amazon Technologies, Inc. | Automated profiling of resource usage |
WO2014048489A1 (en) | 2012-09-28 | 2014-04-03 | Telefonaktiebolaget L M Ericsson (Publ) | Measuring web page rendering time |
US10205698B1 (en) | 2012-12-19 | 2019-02-12 | Amazon Technologies, Inc. | Source-dependent address resolution |
CN104104555B (zh) * | 2013-04-11 | 2019-01-15 | 腾讯科技(深圳)有限公司 | 监控方法、系统、控制端及执行端 |
US9294391B1 (en) | 2013-06-04 | 2016-03-22 | Amazon Technologies, Inc. | Managing network computing components utilizing request routing |
US9769248B1 (en) | 2014-12-16 | 2017-09-19 | Amazon Technologies, Inc. | Performance-based content delivery |
US10027739B1 (en) | 2014-12-16 | 2018-07-17 | Amazon Technologies, Inc. | Performance-based content delivery |
US10091096B1 (en) | 2014-12-18 | 2018-10-02 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10033627B1 (en) | 2014-12-18 | 2018-07-24 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10097448B1 (en) | 2014-12-18 | 2018-10-09 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US10311371B1 (en) | 2014-12-19 | 2019-06-04 | Amazon Technologies, Inc. | Machine learning based content delivery |
US10311372B1 (en) | 2014-12-19 | 2019-06-04 | Amazon Technologies, Inc. | Machine learning based content delivery |
US10225365B1 (en) | 2014-12-19 | 2019-03-05 | Amazon Technologies, Inc. | Machine learning based content delivery |
US10225326B1 (en) | 2015-03-23 | 2019-03-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
US11283697B1 (en) | 2015-03-24 | 2022-03-22 | Vmware, Inc. | Scalable real time metrics management |
US9819567B1 (en) | 2015-03-30 | 2017-11-14 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9887932B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9887931B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
US9832141B1 (en) | 2015-05-13 | 2017-11-28 | Amazon Technologies, Inc. | Routing based request correlation |
US10616179B1 (en) | 2015-06-25 | 2020-04-07 | Amazon Technologies, Inc. | Selective routing of domain name system (DNS) requests |
US10243815B2 (en) * | 2015-06-29 | 2019-03-26 | Vmware, Inc. | Methods and systems to evaluate data center resource allocation costs |
US10097566B1 (en) | 2015-07-31 | 2018-10-09 | Amazon Technologies, Inc. | Identifying targets of network attacks |
US10313211B1 (en) * | 2015-08-25 | 2019-06-04 | Avi Networks | Distributed network service risk monitoring and scoring |
US10594562B1 (en) | 2015-08-25 | 2020-03-17 | Vmware, Inc. | Intelligent autoscale of services |
CN105262608B (zh) * | 2015-09-01 | 2018-09-18 | 北京百度网讯科技有限公司 | 用于网络服务的监控方法和装置 |
US9794281B1 (en) | 2015-09-24 | 2017-10-17 | Amazon Technologies, Inc. | Identifying sources of network attacks |
US9742795B1 (en) | 2015-09-24 | 2017-08-22 | Amazon Technologies, Inc. | Mitigating network attacks |
US9774619B1 (en) | 2015-09-24 | 2017-09-26 | Amazon Technologies, Inc. | Mitigating network attacks |
US10270878B1 (en) | 2015-11-10 | 2019-04-23 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
US10049051B1 (en) | 2015-12-11 | 2018-08-14 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10257307B1 (en) | 2015-12-11 | 2019-04-09 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
US10348639B2 (en) | 2015-12-18 | 2019-07-09 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data transmission rates |
US10212041B1 (en) | 2016-03-04 | 2019-02-19 | Avi Networks | Traffic pattern detection and presentation in container-based cloud computing architecture |
US10931548B1 (en) | 2016-03-28 | 2021-02-23 | Vmware, Inc. | Collecting health monitoring data pertaining to an application from a selected set of service engines |
US10075551B1 (en) | 2016-06-06 | 2018-09-11 | Amazon Technologies, Inc. | Request management for hierarchical cache |
US10110694B1 (en) | 2016-06-29 | 2018-10-23 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
US9992086B1 (en) | 2016-08-23 | 2018-06-05 | Amazon Technologies, Inc. | External health checking of virtual private cloud network environments |
US10033691B1 (en) | 2016-08-24 | 2018-07-24 | Amazon Technologies, Inc. | Adaptive resolution of domain name requests in virtual private cloud network environments |
US10469513B2 (en) | 2016-10-05 | 2019-11-05 | Amazon Technologies, Inc. | Encrypted network addresses |
CN106776257B (zh) * | 2016-12-26 | 2020-02-07 | 中国建设银行股份有限公司 | 一种用于系统性能测试的响应时间统计方法及装置 |
US10372499B1 (en) | 2016-12-27 | 2019-08-06 | Amazon Technologies, Inc. | Efficient region selection system for executing request-driven code |
US10831549B1 (en) | 2016-12-27 | 2020-11-10 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
US10938884B1 (en) | 2017-01-30 | 2021-03-02 | Amazon Technologies, Inc. | Origin server cloaking using virtual private cloud network environments |
US10503613B1 (en) | 2017-04-21 | 2019-12-10 | Amazon Technologies, Inc. | Efficient serving of resources during server unavailability |
US11075987B1 (en) | 2017-06-12 | 2021-07-27 | Amazon Technologies, Inc. | Load estimating content delivery network |
US10447648B2 (en) | 2017-06-19 | 2019-10-15 | Amazon Technologies, Inc. | Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP |
US10742593B1 (en) | 2017-09-25 | 2020-08-11 | Amazon Technologies, Inc. | Hybrid content request routing system |
US10592578B1 (en) | 2018-03-07 | 2020-03-17 | Amazon Technologies, Inc. | Predictive content push-enabled content delivery network |
US10999168B1 (en) | 2018-05-30 | 2021-05-04 | Vmware, Inc. | User defined custom metrics |
EP3857381B1 (en) | 2018-10-26 | 2023-07-12 | VMware, Inc. | Collecting samples hierarchically in a datacenter |
US10862852B1 (en) | 2018-11-16 | 2020-12-08 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
US11280128B2 (en) * | 2019-02-15 | 2022-03-22 | Bastyali Inventions Llc | Smart safe console system and method |
US11582120B2 (en) | 2019-05-30 | 2023-02-14 | Vmware, Inc. | Partitioning health monitoring in a global server load balancing system |
US11811861B2 (en) | 2021-05-17 | 2023-11-07 | Vmware, Inc. | Dynamically updating load balancing criteria |
US11799824B2 (en) | 2021-06-14 | 2023-10-24 | Vmware, Inc. | Method and apparatus for enhanced client persistence in multi-site GSLB deployments |
CN114092201A (zh) * | 2022-01-20 | 2022-02-25 | 中国民航信息网络股份有限公司 | 一种数据提取与分析方法和相关装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6411998B1 (en) * | 1997-09-08 | 2002-06-25 | International Business Machines Corporation | World wide web internet delay monitor |
US6449739B1 (en) * | 1999-09-01 | 2002-09-10 | Mercury Interactive Corporation | Post-deployment monitoring of server performance |
CN1490723A (zh) * | 2002-10-15 | 2004-04-21 | 中国科学院计算技术研究所 | 面向用户的服务器性能评测系统及方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5822525A (en) * | 1996-05-22 | 1998-10-13 | Microsoft Corporation | Method and system for presentation conferencing |
US6006260A (en) * | 1997-06-03 | 1999-12-21 | Keynote Systems, Inc. | Method and apparatus for evalutating service to a user over the internet |
US6587878B1 (en) * | 1999-05-12 | 2003-07-01 | International Business Machines Corporation | System, method, and program for measuring performance in a network system |
AU7588800A (en) * | 1999-09-17 | 2001-04-17 | Mercury Interactive Corporation | Server and network performance monitoring |
US6973489B1 (en) * | 2000-03-21 | 2005-12-06 | Mercury Interactive Corporation | Server monitoring virtual points of presence |
US7506047B2 (en) | 2001-03-30 | 2009-03-17 | Bmc Software, Inc. | Synthetic transaction monitor with replay capability |
US7437450B1 (en) * | 2001-11-30 | 2008-10-14 | Cisco Technology Inc. | End-to-end performance tool and method for monitoring electronic-commerce transactions |
US20030131052A1 (en) | 2002-01-10 | 2003-07-10 | International Business Machines Corporatioin | Method and system for HTTP time-on-page monitoring without client-side installation |
US20060029016A1 (en) * | 2004-06-29 | 2006-02-09 | Radware Limited | Debugging application performance over a network |
-
2004
- 2004-10-20 WO PCT/EP2004/011868 patent/WO2006045322A1/en active Application Filing
- 2004-10-20 EP EP04790676A patent/EP1803066B1/en not_active Not-in-force
- 2004-10-20 AT AT04790676T patent/ATE540361T1/de active
- 2004-10-20 CN CN200480044270.7A patent/CN101044463B/zh not_active Expired - Fee Related
- 2004-10-20 US US11/665,798 patent/US7933988B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6411998B1 (en) * | 1997-09-08 | 2002-06-25 | International Business Machines Corporation | World wide web internet delay monitor |
US6449739B1 (en) * | 1999-09-01 | 2002-09-10 | Mercury Interactive Corporation | Post-deployment monitoring of server performance |
CN1490723A (zh) * | 2002-10-15 | 2004-04-21 | 中国科学院计算技术研究所 | 面向用户的服务器性能评测系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2006045322A1 (en) | 2006-05-04 |
US20080104230A1 (en) | 2008-05-01 |
CN101044463A (zh) | 2007-09-26 |
US7933988B2 (en) | 2011-04-26 |
EP1803066B1 (en) | 2012-01-04 |
EP1803066A1 (en) | 2007-07-04 |
ATE540361T1 (de) | 2012-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101044463B (zh) | 用于监视客户端-服务器架构的性能的方法和系统 | |
US9112808B2 (en) | Devices, systems, and methods for providing data | |
US6625648B1 (en) | Methods, systems and computer program products for network performance testing through active endpoint pair based testing and passive application monitoring | |
US6411998B1 (en) | World wide web internet delay monitor | |
US6694288B2 (en) | System and method for automated analysis of load testing results | |
US8775603B2 (en) | Method and system for testing variations of website content | |
Li et al. | WebProphet: Automating Performance Prediction for Web Services. | |
US8135829B2 (en) | Utilizing a single agent on a non-origin node for measuring the roundtrip response time of web pages with embedded HTML frames | |
US20060271671A1 (en) | System and method for optimizing website visitor actions | |
US6950868B1 (en) | Method of and apparatus for remote monitoring | |
US20090157864A1 (en) | Grid computing control method for testing application program capacity of server and service method thereof | |
WO2002019625A2 (en) | System and method for measuring wireless device and network usage and performance metrics | |
CN103257989A (zh) | 网页下载时间分析 | |
WO2006031460A2 (en) | Network testing agent with integrated microkernel operating system | |
US7580365B2 (en) | System and method utilizing a single agent on a non-origin node for measuring the roundtrip response time over a public or private network with HTTP/HTTPS network protocol | |
JP2004173284A (ja) | 遠隔通信網を介したマルチメディアメッセージの追跡方法と追跡装置 | |
CN110232020A (zh) | 基于智能决策的测试结果分析方法及相关装置 | |
US20080228859A1 (en) | Grid Computing System for Testing Application Program Capacity of Server | |
Krishnamurthy et al. | {PRO-COW}: Protocol Compliance on the {Web–A} Longitudinal Study | |
CN108256106B (zh) | 一种模拟访问网站适配器系统 | |
CN113676372A (zh) | 通信性能的测试方法、装置和存储介质 | |
Cassone et al. | Web Performance Testing and Measurement: a complete approach | |
CN112445697A (zh) | 用于测试应用的方法和装置 | |
CN102158887A (zh) | 通过主动探测及时反映业务系统运行情况的方法 | |
CN108108305A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100818 |