跟踪服务器请求制造技术

技术编号:8629565 阅读:215 留言:0更新日期:2013-04-26 18:26
一种技术包括当应用程序(116)正在计算机(100)上执行时向应用程序(116)中插入(204)代码(119)。代码(119)促使应用程序(116)关于与由客户端(110)提供的服务器请求相关联的应用程序间消息与监视工具(117)通信。该技术包括使用监视工具(208)来对被附加于该消息的相关令牌进行操作以跟踪服务器请求的处理。

【技术实现步骤摘要】
【国外来华专利技术】跟踪服务器请求
技术介绍
本专利技术一般地涉及跟踪服务器请求。用于服务器侧应用的当前流行的架构模型是基于反应性原理,其中,服务器响应于从请求方接收到外部请求而执行某些工作并随后向请求方传送响应(即,结果)。服务器性能的主要指示符是服务器请求等待时间,其是从服务器接收到请求的时间直至服务器提供响应的时间所经过的时间。出于理解和准确地确定延迟的根源的目的,性能分析员通常对诸如哪些特定服务器请求执行起来花费相对长的时间和用于这些服务器请求的内部处理细节的因素感兴趣。常规服务器请求可以产生多个辅助请求,因为出于满足该请求的目的,最初联系的服务器可以向其他服务器传送附加请求。此类跨服务器通信通常使诊断分析复杂,因为涉及许多部件,并且可能突然插入对在对初始服务器请求进行响应时的总等待时间有所贡献的相应问题。附图说明图1是根据示例性实施方式的物理机的系统的方框图。图2是根据示例性实施方式的与服务器请求相关联的示例性拓扑。图3是描述了根据示例性实施方式的用以跟踪产生辅助请求的服务器请求的技术的流程图。图4是描述了图示出根据示例性实施方式的用以处于处理相关令牌的目的补充接收到的应用程序间消息的处理的代码片段(code snippet)的使用的技术的流程图。图5是描述了图示出根据示例性实施方式的用以出于处理相关令牌的目的补充要传送的应用程序间消息的处理的代码片段的使用的技术的流程图。图6是描述根据示例性实施方式的被代码片段与监视工具API相结合地使用以处理输入应用程序间消息的技术的流程图。图7是描述了根据示例性实施方式的被代码片段与监视工具API相结合地使用以处理输出应用程序间消息的技术的流程图。具体实施例方式在本文中出于跟踪由客户端做出且被提供给服务器侧编程框架(在本文中称为“服务器侧”)的服务器请求的目的公开了系统和技术。在服务器侧,来自客户端的服务器请求可以导致大量的请求,其包括从客户端接收到的初始请求和在初始请求的处理中在服务器侧产生的结果得到的辅助请求。更具体地,通常,来自客户端的给定服务器请求的处理涉及不同部件或服务器侧的应用程序之间的消息(在本文中称为“应用程序间消息”)的传送。在这方面,服务器侧可以由多个层或应用程序构成,其又可以存在于一个或多个服务器上。当服务器侧上的应用程序从客户端接收到请求时,处理请求的过程中的应用程序可以向其他应用程序发布辅助请求(以应用程序间消息的形式);并且此过程可以继续且是递归的。如在本文中公开的,出于跟踪在服务器侧上的不同应用程序进行的服务器请求处理的目的,向出于满足请求的目的传送的每个应用程序间消息附加着色或相关令牌。如下文进一步描述的,例如诊断工具的监视工出于分析与服务器请求的处理相关联的执行的目的处理相关令牌,即使服务器请求的最后处理涉及服务器侧上的多个应用程序。换言之,诊断工具出于分析与跨服务器侧上的所有部件的处理相关联的等待时间、执行时间等的目的使用相关令牌。在本文中公开的技术和系统允许监视应用程序间消息通信,无论是使用标准化通信协议还是使用不遵守任何特定标准的传统协议(例如,专有协议)来传送应用程序间消息。因此,某些服务器侧部件可能是传统应用程序,其使用限制或未知的通信协议。以这种方式,在服务器请求的处理中使用的某些应用程序可能是多年以前或过去的几十年开发的。监视工具仍可以与此类应用程序一起使用,因为相关令牌和代码片段(下文描述)的使用允许应用程序间消息传送的监视,无论应用程序所采用的通信协议的类型如何。作为更特定的示例,根据本专利技术的某些实施例,可以在系统上实现服务器侧,诸如在图1中描述的示例性系统。通常,图1的系统包括被网络130互连的多个物理机100(在图1中描述的示例性机器IOOaUOOb和100c)。物理机的示例包括计算机(例如,应用服务器、存储服务器、网络服务器等)、通信模块(例如,交换机、路由器等)及其他类型的机器。网络130还可以包括系统总线或其他快速互连。“物理机”指示该机器是由可执行程序指令和硬件构成的实际机器。网络130的示例包括局域网(LAN)、广域网(WAN)、因特网、任何其他类型的通信链路或其组合。物理机100可以位于一个机柜(或机架)内;或者替换地,物理机100可以位于多个机柜(或机架)中或者甚至在地理上分散。在图1中描述的系统可以是应用服务器、存储服务器场(或存储器域网)、网络服务器场、交换机或路由器场、其他类型的数据中心等中的任何一个。并且,虽然在图1中描述了三个物理机100,但注意的是根据其他实施方式,可以使用多于三个物理机100、两个物理机或一个物理机100。虽然在图1中将每个物理机100描述为包含在箱子内,但注意的是物理机100可以是具有多个节点的分布式机器,其提供分布式和并行处理系统。如在图1中描述的,在某些实施方式中,物理机100可以存储机器可执行指令106。这些指令106可以包括一个或多个应用程序116、操作系统188和一个或多个设备驱动器120 (其可以是操作系统118的一部分)。物理机100还可以包括硬件122,其包括处理器,诸如一个或多个中央处理单元(CPU) 124 (出于非限制性示例的目的,在图1中描述了一个CPU 124)。每个CPU 124可以具有一个或多个处理核。硬件122还可以包括系统存储器126和网络接口 128。在某些实施方式中,一个或多个CPU 124执行机器可执行指令106。可以将机器可执行指令106存储在各种形式的机器可读介质中的任何一个中,诸如存储器126、可移动介质、磁存储器、光存储器、另一机器上的存储器等。根据某些实施方式,一个或多个物理机100上的应用程序116形成特定复合型服务器侧应用程序框架的部件的全部或一部分。如在图1中所描述的,除上述部件之外,可执行指令106还包括监视工具117,其用于跟踪服务器侧上的服务器请求的部件间处理的目的,诸如跟踪来自客户端的初始请求的处理、处理结果得到的辅助请求、聚集并处理中间结果且最后将最终结果提供给客户端。物理机IOOa仅仅是用于服务器的特定物理机100的示例。注意的是服务器侧可以由多个物理机形成,诸如与其他物理机100组合的机器100a,例如,诸如物理机IOOb和/或物理机100c。因此,给定服务器侧可以包括具有物理机IOOa的一个或多个应用程序116 ;具有另一物理机IOOb的一个或多个应用程序116 ;在多个物理机100上的一个或多个应用程序116等。无论特定实施方式如何,针对在本文中公开的示例,给定服务器请求随初始请求一起产生,其由客户端提供(经由在图1中未描述的物理机)且被应用程序116中的一个接收以发起处理,该处理最终导致满足客户端请求的响应。来自客户端的初始请求的处理可以产生附加辅助请求,其传播(经由应用程序间消息)至可以位于同一物理机100上和/或不同物理机100上的其他应用程序116。根据本文公开的实施方式,出于即使当在这些通信中使用标准化和/或非标准化通信协议的目的也监视与请求处理相关联的应用程序间消息发送的目的,由代码片段119来动态地修改服务器侧上的每个应用程序116。通常,代码片段119是出于促使应用程序116在仪表化点处执行预定功能的目的在应用程序116的代码中的特定执行或仪表化点处插入的程序代码。作为更特定本文档来自技高网...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种方法,包括 当应用程序在计算机(100)上执行时将代码(119)插入(204)应用程序(116)中,代码(119)促使应用程序(116)关于与由客户端(110)提供的服务器请求相关联的应用程序间消息(186、190)与监视工具(117)进行通信,相关令牌被附加于应用程序间消息;以及 使用监视工具(208)对相关令牌进行操作以跟踪服务器请求的处理。2.权利要求1的方法,其中,插入代码的动作包括将代码片段(119)插入与应用程序相关联的编译代码中。3.权利要求1的方法,其中 插入代码的动作包括在与接收应用程序间消息相关联的应用程序的仪表化点处插入代码,以从用来传送应用程序间消息的协议独立地提取相关令牌;以及 使用监视工具的动作包括解析(214)相关令牌以提取关于服务器请求的身份和服务器请求的拓扑的信息。4.权利要求1的方法,其中 插入代码的动作包括在与将应用程序间消息传送至另一应用程序相关联的应用程序的仪表化点处插入(238)代码,以从用来传送应用程序间消息的协议独立地将相关令牌附加于应用程序间消息;以及 使用监视工具的动作包括用指示由应用程序进行的应用程序间消息的处理的信息来更新相关令牌。5.权利要求1的方法,其中,使用监视工具的动作包括对相关令牌进行操作以用关于另一应用程序的信息来更新相关令牌以处理服务器请求。6.一种制品,包括计算机可读存储介质以存储指令,该指令在被计算机执行时促使计算机 经由应用程序的代码片段与应用程序通信以提取附加于接收到的应用程序间消息的相关令牌,应用程序间消息是可归因于由客户端提供的服务器请求的消息的拓扑的一部分;以及 至少部分地基于相关令牌来对服务器请求执行诊断处理。7.权利要求6的制品,所述计算...

【专利技术属性】
技术研发人员:P芬代森C帕帕多普洛斯
申请(专利权)人:惠普发展公司有限责任合伙企业
类型:
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1