一种用于评估应用的性能的方法和系统技术方案

技术编号:17104479 阅读:24 留言:0更新日期:2018-01-24 21:06
一种用于评估一应用从该应用当前正在其中执行的第一环境迁移至一不同的第二环境时的性能的方法,该方法包括:利用从在第一环境中执行的所述应用获取的数据来生成配置文件,将所述配置文件安装在驻留在第二环境中的虚拟机中,在安装之后运行所述虚拟机中的所述应用,以及从所述虚拟机获取指示所述性能的指标。

A method and system for evaluating the performance of an application

A model is used to evaluate the application from the application method of the performance of the first environment is currently migrating to a different environment of the second, the method includes: to generate the configuration file obtained from the application execution environment in the first data of the virtual machine will be installed in the configuration file resides in second in the environment, running the application of the virtual machine in the installation, and the index from the virtual machine to obtain the performance indicator.

【技术实现步骤摘要】
一种用于评估应用的性能的方法和系统
本专利技术总体上涉及数据迁移,并且更具体地说,涉及分布式应用的迁移。
技术介绍
分布式应用是这样一种应用,其中,呈现、应用处理以及数据管理在多个协作服务器上作为逻辑上分离的过程来执行。这些服务器例如可能包括,一个或多个超文本传输协议(HTTP)服务器、应用服务器和/或关系数据库管理系统。当一分布式应用要迁移至新环境(例如,云环境)时,通常难于估计该应用将会怎样在新环境中执行。例如,一些软件包在新环境中可能彼此冲突,从而负面地影响应用性能。然而,在没有在新环境中实际安装并配置该应用的情况下,难于准确地估计该应用在新环境中的性能。尽管分布式应用可以在新环境中完全重新安装和重新配置,但该方法出于几个理由而并不理想。一个理由是,由于应用层级之间的微妙相依性、潜在的复杂配置、以及特定于应用的处理,安装变得复杂。而且,迁移和存储与一分布式应用相关联的所有数据昂贵且劳动密集。避免在新环境中完全重新安装分布式应用的其它方法同样具有缺点。例如,微基准(micro-benchmark)可以在当前环境和新环境中运行,以获知性能差异,并且接着可以构建针对当前环境的性能模型,并利用该微基准将其变换到新环境中。然而,所选的建模技术的弱点也被延续到结果中,并且模型变换也会引入不准确性。另选的是,该应用可以深度轮廓化,以构造模仿该应用的资源消耗的稻草人(strawman)应用。然而,难于准确地模仿某些资源消耗和执行行为,诸如线程同步化和存储器使用。
技术实现思路
一种用于评估一应用从该应用当前正在其中执行的第一环境迁移至一不同的第二环境时的性能的方法,该方法包括:利用从在第一环境中执行的所述应用获取的数据来生成配置文件,将所述配置文件安装在驻留在第二环境中的虚拟机中,在安装之后运行所述虚拟机中的所述应用,以及从所述虚拟机获取指示所述性能的指标。由此,本专利技术的实施例在目标环境中复制了应用要迁移至的执行环境。这通过拦截系统库调用并且修改输入/输出参数和返回值来实现。未修改的应用二进制(applicationbinary)被直接使用。附图说明按照可以详细理解本专利技术的上述特征的方式,可以参照多个实施例对本专利技术进行更具体描述,其中一些实施例在附图中进行了例示。然而,要注意的是,附图仅例示了本专利技术的典型实施例,并由此,不应被视为对本专利技术范围的限制,对于本专利技术来说,可以允许其它等效实施例。图1是描绘本专利技术的实施例可以部署在其中的网络的一个示例的框图;图2A-2C是例示根据本专利技术的、用于复制网络设置的技术的一个实施例的框图;图3是例示根据本专利技术的实施例的、用于在新环境中自动复制分布式应用的方法的一个实施例的流程图;图4是例示根据本专利技术的、用于处理应用的新交互和/或随后迁移的技术的一个实施例的框图;以及图5是利用通用计算装置来实现的性能评估方法的高级框图。具体实施方式在一个实施例中,本专利技术是用于评估新环境中的分布式应用性能的方法和装置。本专利技术的实施例将应用的原始执行环境复制到新的服务器集合中,并且使用应用二进制来驱动性能测量。具体来说,所复制环境包括原始环境的网络因特网协议(IP)配置、库文件、目录结构、用户帐户、环境变量等,其允许正确执行应用二进制。准确的性能指标可以根据该应用在所复制环境中的成功部署而获取,因为该应用将按和其消耗原始环境中的资源相同的方式来消耗复制环境中的资源。这将允许所有执行上错综复杂的事物(例如,中央处理单元(CPU)缓存影响、线程同步化等)显露。图1是描绘本专利技术的实施例可以部署在其中的网络100的一个示例的框图。网络100可以是任何类型的通信网络,举例来说,如因特网协议(IP)网络(例如,IP多媒体子系统(IMS)网络,异步传输模式(ATM)网络、无线网络、蜂窝网络、长期演进(LTE)网络等)。“IP网络”被宽泛定义为使用因特网协议来交换数据包的网络。另外的示例性IP网络包括:话音IP(VoIP)网络、服务IP(SoIP)网络等。在一个实施例中,网络100可以包括核心网络102。核心网络102可以与一个或多个接入网络120和122通信。接入网络120和122可以包括:无线接入网络(例如,WiFi网络等)、蜂窝接入网络、线缆接入网络、无线接入网络等。在一个实施例中,接入网络120和122可以都是不同类型的接入网络,可以都是同一类型的接入网络,或者一些接入网络可以是同一类型的接入网络,而其它接入网络可以是不同类型的接入网络。核心网络102和接入网络120与122可以由不同服务提供方、同一服务提供方或其组合来运行。在一个实施例中,核心网络102可以包括应用服务器(AS)104和数据库(DB)106。尽管仅例示了单个AS104和单个DB106,但应注意到,可以部署任何数量的应用服务器104或数据库106。例如,核心网络102可以包括其中服务和应用以高度分布式方式支持的云环境的一部分。在一个实施例中,AS104可以包括如图5所示的通用计算机并且在下面进行讨论。在一个实施例中,AS104可以执行下面讨论的与评估分布式应用性能有关的方法和算法。例如,AS104可以发起应用的迁移和/或维持IP绑定状态。在一个实施例中,DB106存储与被迁移的分布式应用有关的数据。例如,DB106可以存储用于系统调用的输入和输出参数、文件系统设置、用户帐户设置、以及环境变量等等。尽管仅例示了一个DB106,但网络100可以包括多个数据库。在一个实施例中,接入网络120可以与一个或多个用户端点装置(也称为“端点装置”或“UE”)108和110通信。在一个实施例中,接入网络122可以与一个或多个用户端点装置112和114通信。在一个实施例中,用户端点装置108、110、112以及114可以是能够访问来自基于云的服务提供方的服务的任何类型的端点装置,如台式计算机,或移动端点装置,诸如蜂窝电话、智能电话、平板计算机、膝上型计算机、上网本、超级本(ultrabook)、便携式媒体装置(例如,MP3播放器)、游戏机、便携式游戏装置等。应注意到,尽管图1中仅例示了四个用户端点装置,但可以部署任何数量的用户端点装置。应注意到,网络100已经简化。例如,网络100可以包括其它网络部件(未示出),如边界部件、路由器、交换机、策略服务器、安全装置、内容分布网络(CDN)等。如上所述,本专利技术的实施例在新的服务器集合中复制应用的原始执行环境,包括网络设置和文件系统设置。在一个实施例中,网络设置经由在该应用与内核之间引入的软件层来复制,该软件层替换与网络建立和拆除有关的所选择的系统调用的输入参数和输出。在另一实施例中,文件系统设置通过将该应用访问的文件打包并将它们拷贝到新服务器而被复制。新环境还被更新以匹配用户帐户设置和环境变量。图2A-2C是例示根据本专利技术的、用于复制网络设置的技术的一个实施例的框图。具体来说,所例示的技术通过在该应用与操作系统之间的交互点处介入来提供与原始执行环境相同的执行环境的错觉。图2A例示了在原始执行环境中,示例性应用200在迁移之前的操作。如所示,应用200与包括文件系统和网络协议栈的操作系统204联合操作。根据该应用200,第一服务器206可能希望与第二服务器208通信。在迁移之前,第一服务器206具有示例性IP地本文档来自技高网...
一种用于评估应用的性能的方法和系统

【技术保护点】
一种用于评估一应用从该应用当前正在其中执行的第一环境迁移至一不同的第二环境时的性能的方法,该方法包括:利用从在第一环境中执行的所述应用获取的数据来生成配置文件;将所述配置文件安装在驻留在第二环境中的虚拟机中;在安装之后运行所述虚拟机中的所述应用,其中所述配置文件被配置为拦截在所述虚拟机中执行的所述应用和所述虚拟机的操作系统之间的交互并修改这些交互中的数据以便提供对所述虚拟机中运行的所述应用来说其执行环境未改变的错觉;以及从所述虚拟机获取指示所述性能的指标。

【技术特征摘要】
2012.12.14 US 13/715,4801.一种用于评估一应用从该应用当前正在其中执行的第一环境迁移至一不同的第二环境时的性能的方法,该方法包括:利用从在第一环境中执行的所述应用获取的数据来生成配置文件;将所述配置文件安装在驻留在第二环境中的虚拟机中;在安装之后运行所述虚拟机中的所述应用,其中所述配置文件被配置为拦截在所述虚拟机中执行的所述应用和所述虚拟机的操作系统之间的交互并修改这些交互中的数据以便提供对所述虚拟机中运行的所述应用来说其执行环境未改变的错觉;以及从所述虚拟机获取指示所述性能的指标。2.根据权利要求1所述的方法,其中,所述数据包括网络信息和文件系统信息。3.根据权利要求2所述的方法,其中,所述网络信息包括用于系统调用的输入和输出参数。4.根据权利要求2所述的方法,其中,所述文件系统信息包括文件系统设置。5.根据权利要求2所述的方法,其中,所述文件系统信息包括用户帐户设置。6.根据权利要求2所述的方法,其中,所述网络信息包括环境变量。7.根据权利要求2所述的方法,其中,所述网络信息包括因特网协议配置。8.根据权利要求1所述的方法,其中,所述配置文件将与在第一环境中执行的所述应用相关联的旧因特网协议地址变换成...

【专利技术属性】
技术研发人员:S·A·百思特黄海B·C·塔克唐春强王龙
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:美国,US

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

1