CN103873290A - 一种用于评估应用的性能的方法和系统 - Google Patents

一种用于评估应用的性能的方法和系统 Download PDF

Info

Publication number
CN103873290A
CN103873290A CN201310627208.1A CN201310627208A CN103873290A CN 103873290 A CN103873290 A CN 103873290A CN 201310627208 A CN201310627208 A CN 201310627208A CN 103873290 A CN103873290 A CN 103873290A
Authority
CN
China
Prior art keywords
environment
application
network
server
virtual machine
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.)
Granted
Application number
CN201310627208.1A
Other languages
English (en)
Other versions
CN103873290B (zh
Inventor
S·A·百思特
黄海
B·C·塔克
唐春强
王龙
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 CN103873290A publication Critical patent/CN103873290A/zh
Application granted granted Critical
Publication of CN103873290B publication Critical patent/CN103873290B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3409Recording 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种用于评估一应用从该应用当前正在其中执行的第一环境迁移至一不同的第二环境时的性能的方法,该方法包括:利用从在第一环境中执行的所述应用获取的数据来生成配置文件,将所述配置文件安装在驻留在第二环境中的虚拟机中,在安装之后运行所述虚拟机中的所述应用,以及从所述虚拟机获取指示所述性能的指标。

Description

一种用于评估应用的性能的方法和系统
技术领域
本发明总体上涉及数据迁移,并且更具体地说,涉及分布式应用的迁移。
背景技术
分布式应用是这样一种应用,其中,呈现、应用处理以及数据管理在多个协作服务器上作为逻辑上分离的过程来执行。这些服务器例如可能包括,一个或多个超文本传输协议(HTTP)服务器、应用服务器和/或关系数据库管理系统。
当一分布式应用要迁移至新环境(例如,云环境)时,通常难于估计该应用将会怎样在新环境中执行。例如,一些软件包在新环境中可能彼此冲突,从而负面地影响应用性能。然而,在没有在新环境中实际安装并配置该应用的情况下,难于准确地估计该应用在新环境中的性能。尽管分布式应用可以在新环境中完全重新安装和重新配置,但该方法出于几个理由而并不理想。一个理由是,由于应用层级之间的微妙相依性、潜在的复杂配置、以及特定于应用的处理,安装变得复杂。而且,迁移和存储与一分布式应用相关联的所有数据昂贵且劳动密集。
避免在新环境中完全重新安装分布式应用的其它方法同样具有缺点。例如,微基准(micro-benchmark)可以在当前环境和新环境中运行,以获知性能差异,并且接着可以构建针对当前环境的性能模型,并利用该微基准将其变换到新环境中。然而,所选的建模技术的弱点也被延续到结果中,并且模型变换也会引入不准确性。另选的是,该应用可以深度轮廓化,以构造模仿该应用的资源消耗的稻草人(straw man)应用。然而,难于准确地模仿某些资源消耗和执行行为,诸如线程同步化和存储器使用。
发明内容
一种用于评估一应用从该应用当前正在其中执行的第一环境迁移至一不同的第二环境时的性能的方法,该方法包括:利用从在第一环境中执行的所述应用获取的数据来生成配置文件,将所述配置文件安装在驻留在第二环境中的虚拟机中,在安装之后运行所述虚拟机中的所述应用,以及从所述虚拟机获取指示所述性能的指标。
由此,本发明的实施例在目标环境中复制了应用要迁移至的执行环境。这通过拦截系统库调用并且修改输入/输出参数和返回值来实现。未修改的应用二进制(application binary)被直接使用。
附图说明
按照可以详细理解本发明的上述特征的方式,可以参照多个实施例对本发明进行更具体描述,其中一些实施例在附图中进行了例示。然而,要注意的是,附图仅例示了本发明的典型实施例,并由此,不应被视为对本发明范围的限制,对于本发明来说,可以允许其它等效实施例。
图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地址9.2.2.1,而第二服务器208具有示例性IP地址9.2.2.2。由此,当第一服务器206希望连接至第二服务器208时,第一服务器206利用期望目的地IP地址9.2.2.2发送消息,以发起该连接。第二服务器208期待或识别来自IP地址9.2.2.1的消息,并且接受该消息以建立连接。
图2B例示了示例性应用200迁移到新执行环境之后的操作。如所示,该迁移导致了针对第一服务器206和第二服务器208的IP地址的变化(具体来说,在新执行环境中模仿第一服务器206和第二服务器208的虚拟机具有新的、不同的IP地址)。特别地,第一服务器的IP地址已经从9.2.2.1改变成8.4.4.1,而第二服务器的IP地址已经从9.2.2.2改变成8.4.4.2。然而,服务器206和208可能未获知彼此的新IP地址。由此,当第一服务器206利用期望目的地IP地址9.2.2.2发送消息以发起连接时,该连接尝试将经历出错。IP地址9.2.2.2在新执行环境中不存在。而且,第二服务器208将不会期待或识别来自IP地址8.4.4.1的消息。
图2C例示了示例性应用200在迁移之后并且实施了本发明的技术的操作。在这种情况下,伪装层210插入在应用200与被复制应用的操作系统204之间。伪装层210包括这样的软件和/硬件,即,其拦截系统调用并利用期望值替换该系统调用中涉及的实际值,由此产生执行环境未改变的错觉,并且使迁移对于应用200透明。
例如,参照图2B所示的出错示例,伪装层210将拦截第一服务器的消息并且将期望目的地IP地址9.2.2.2变换成第二服务器的新IP地址8.4.2.2。类似的是,当该消息由第二服务器208接收时,伪装层210将拦截第一服务器的消息并且将第一服务器的新IP地址8.4.4.1变换成期望的源IP地址9.2.2.1。在一个实施例中,网络地址变换在库层级提供,而非由网络协议栈来提供。例如,本地IP地址可以通过拦截输入/输出控制系统调用来变换(例如,在Linux中利用ioctl(SIOCGIFFLAGS)命令);网络端点可以通过检索本地绑定名称或指定套接字的对等地址来变换(例如,在Linux中利用getsockname()或getpeername());主机名称可以通过拦截命名当前系统的字符串来变换(例如,在Linux中利用uname()命令);以及域名称系统查找可以通过从一数据库中检索主机信息来变换(例如,在Linux中利用gethostname()命令)。
而且,如所示,图2C所示的文件系统被封入一虚线框内。该虚线框指示该文件系统在从原始执行环境拷贝到新执行环境之后被“监禁”(例如,利用UNIX chroot操作来伪装该文件系统)。然而,在一个实施例中,诸如处理文件(例如,/proc)、设备文件(例如,/dev)、以及非处理相关系统文件(例如,/sys)之类的特定文件系统是从新的虚拟机安装的(即,使可访问)的,而非从原始执行环境迁移的。
由此,本发明在服务器复制之后拦截应用-操作系统交互,并且修改这些交互中的数据(例如,IP地址和主机名称),以便提供执行环境未改变的错觉。该应用由此被允许利用来自预复制/迁移执行环境的原始IP地址和主机名称来继续。所有配置文件和数据文件的位置保持不变,并且环境变量被再现。
应当清楚,尽管图2A-2C例示了在连接操作的示例性上下文中的本发明实施例,但图2C所示相同技术可以被实现以同样促进其它操作(例如,检测某人自己的IP地址)。
图3是例示根据本发明的实施例的、用于在新环境中自动复制分布式应用的方法300的一个实施例的流程图。具体来说,方法300通过在所复制应用中包括伪装层来复制要被迁移的应用,如图2C所示。在一个实施例中,方法300由AS104执行,其在这种情况下,通过收集来自原始执行环境的数据、生成新配置文件、以及在新执行环境中运行新虚拟机来管理该应用的迁移。
该方法300从步骤302开始。在步骤304中,AS104收集来自在原始执行环境中执行的应用的网络和文件系统信息。在一个实施例中,该网络和文件系统信息包括:用于系统调用的输入和输出参数、文件系统设置、用户帐户设置、以及环境变量等等。在一个实施例中,AS104将该信息存储在DB106中。
在步骤306中,AS104在新执行环境中运行一个或多个新虚拟机。这些虚拟机模仿部署在原始执行环境中的服务器,并且可以根据任何已知技术来运行。
在步骤308中,AS104获取用于这些虚拟机的IP地址。这些IP地址还可以存储在DB106中。
在步骤310中,AS104利用旧IP地址(驻留在原始执行环境中的服务器的IP地址)和新IP地址(在新执行环境中运行的虚拟机的IP地址)来生成用于该执行环境的配置文件。
在步骤312中,AS104在该虚拟机中安装该配置文件。接着,在步骤314,AS104在每一个虚拟机中开始该应用。在步骤316中,方法300结束。
方法300由此在新执行环境中的新服务器集合中复制原始执行环境。将该应用成功部署在所复制的环境中允许获取准确的性能指标,因为所复制的服务器按它们在原始执行环境中的相同方式来消耗资源。
方法300可以在应用的初始迁移期间甚或在迁移之后执行,以便于持续的迁移后管理。在执行初始迁移的情况下,方法300可以在完全迁移(即,其中,迁移了全部应用组件)或部分迁移(例如,应用组件的逐步迁移,或者其中仅迁移这些组件的子集的迁移)期间执行。方法300还可以在这样的初始迁移期间实现:即,将整个应用迁移至单个云,将应用的不同部分迁移至多个不同云,或者保持应用的某些部分在内部(例如,在原始执行环境中)而将该应用的其它部分迁移至一个或多个云。
在执行已经迁移的应用的持续管理的情况下,方法300可以被用于执行云之间的迁移(例如,包括跨个多云重新分布应用组件,以使应用最优化),或者促进采用伪装层(诸如所公开的伪装层)的应用之间的新的交互(例如,应用组件可以在交互时段之后被迁移至分别的云)。
图4是例示根据本发明的、用于处理应用的新的交互和/或随后的迁移的技术的一个实施例的框图。具体来说,图4例示了用于解决具有相同IP地址的两个迁移应用之间的冲突的技术。
图4由此包括:第一应用,该第一应用包括第一多个服务器4001-400n(统称为“第一应用400”)并且在第一家庭环境404中执行;第二应用,该第二应用包括第二多个服务器4021-402m(统称为“第二应用402”)并且在第二家庭环境406中执行。第一应用400和第二应用402都从它们各自的家庭环境迁移至第一云环境408;随后,第二应用402被迁移至第二云环境410。尽管未示出,但第一家庭环境404、第二家庭环境406、第一云环境408和第二云环境410中的每一个还都包括诸如根据方法300操作的AS104的服务器。
如所示,在它们各自的家庭环境中,第一应用400的服务器4002和第二应用402的服务器4022具有相同示例性IP地址(即,10.1.1.5)。然而,当迁移至第一云环境408时,服务器4002和服务器4022都被指配新IP地址(即,分别为9.1.1.4和9.1.1.3),以解决该冲突。由此,在将应用400和402都迁移至第一云环境408的第一次迁移之后,服务器4002看到服务器4022的IP地址为9.1.1.3,而服务器4022看到服务器4002的IP地址为9.1.1.4。
然而,当第二应用402随后被迁移至第二云环境410时,第一应用400保留在第一云环境408中。第二应用402的服务器4021-402m被指配新IP地址;用于服务器4022的示例性新IP地址为8.3.12.121。AS104在第一云环境408中操作。在第二云环境408中操作的AS104知道用于服务器4021-402m的新IP地址,并且相应地更新第二应用的配置文件中的IP映射。
图5是利用通用计算装置500来实现的性能评估方法的高级框图。在一个实施例中,通用计算装置500包括:处理器502、存储器504、性能评估模块505以及各种输入/输出(I/O)装置506,如显示器、键盘、鼠标、输入笔(stylus)、无线网络接入卡、以太网接口等。在一个实施例中,至少一个I/O装置是存储装置(例如,盘驱动器、光盘驱动器、软盘驱动器)。应当明白,性能评估模块505可以被实现为通过通信信道耦接至处理器的子系统或物理装置。
另选的是,性能评估模块505可以用一个或多个软件应用(甚或软件和硬件的组合,例如,利用专用集成电路(ASIC))来表示,其中,该软件从存储介质(例如,I/O装置506)加载,并且通过处理器502在通用计算装置500的存储器504中操作。由此,在一个实施例中,用于评估新环境中的应用性能的性能评估模块505(如在此参照前述图描述的)可以存储在计算机可读存储介质上(例如,RAM、磁性或光学驱动器或盘等)。
应注意到,尽管未明确指定,但在此描述的方法的一个或多个步骤可以针对特定应用在需要时包括存储、显示和/或输出步骤。换句话说,在该方法中讨论的任何数据、记录、字段、和/或中间结果可以针对特定应用在需要时被存储、显示、和/或输出至另一装置。而且,附图中的、陈述确定操作或涉及判定的步骤或框不必要求该确定操作的两个分支都被实践。换句话说,该确定操作的分支之一可以被视为可选步骤。
虽然前述致力于本发明的实施例,但可以在不脱离本发明的基本范围的情况下,设想本发明的其它和进一步实施例。在此呈现的各种实施例或其部分,可以被组合以创建另一些实施例。而且,诸如顶、侧、底、前、后等的术语是相对或方位术语,并且参照附图中例示的示例性实施例来使用,因而,这些术语可以互换。

Claims (19)

1.一种用于评估一应用从该应用当前正在其中执行的第一环境迁移至一不同的第二环境时的性能的方法,该方法包括:
利用从在第一环境中执行的所述应用获取的数据来生成配置文件;
将所述配置文件安装在驻留在第二环境中的虚拟机中;
在安装之后运行所述虚拟机中的所述应用;以及
从所述虚拟机获取指示所述性能的指标。
2.根据权利要求1所述的方法,其中,所述数据包括网络信息和文件系统信息。
3.根据权利要求2所述的方法,其中,所述网络信息包括用于系统调用的输入和输出参数。
4.根据权利要求2所述的方法,其中,所述文件系统信息包括文件系统设置。
5.根据权利要求2所述的方法,其中,所述文件系统信息包括用户帐户设置。
6.根据权利要求2所述的方法,其中,所述网络信息包括环境变量。
7.根据权利要求2所述的方法,其中,所述网络信息包括因特网协议配置。
8.根据权利要求1所述的方法,其中,所述配置文件将与在第一环境中执行的所述应用相关联的旧因特网协议地址变换成与第二环境中的所述虚拟机相关联的新因特网协议地址。
9.根据权利要求1所述的方法,其中,所述配置文件替换与网络建立和拆除有关的系统调用的输入参数。
10.根据权利要求1所述的方法,其中,所述配置文件替换与网络建立和拆除有关的系统调用的输出。
11.根据权利要求1所述的方法,还包括:
将所述应用访问的文件从第一环境拷贝到第二环境中的服务器。
12.根据权利要求1所述的方法,其中,所述配置文件使得在所述虚拟机中运行的应用看起来是该应用继续在第一环境中执行。
13.根据权利要求1所述的方法,其中,仅第二环境是云环境。
14.根据权利要求1所述的方法,其中,第一环境和第二环境都是云环境。
15.根据权利要求1所述的方法,其中,仅所述应用的第一部分被迁移至第二环境。
16.根据权利要求15所述的方法,其中,第二环境是所述应用的不同部分所迁移至的多个不同云环境之一。
17.根据权利要求1所述的方法,其中,所述应用的第二部分继续在第一环境中执行。
18.根据权利要求1所述的方法,其中,所述应用从第一环境至第二环境的迁移导致该应用与另一应用之间的新的交互。
19.一种用于评估一应用从该应用当前正在其中执行的第一环境迁移至一不同的第二环境时的性能的系统,该系统包括执行根据权利要求1至18中的任一项所述的方法步骤的装置。
CN201310627208.1A 2012-12-14 2013-11-29 一种用于评估应用的性能的方法和系统 Active CN103873290B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/715,480 2012-12-14
US13/715,480 US9934054B2 (en) 2012-12-14 2012-12-14 Evaluating distributed application performance in a new environment

Publications (2)

Publication Number Publication Date
CN103873290A true CN103873290A (zh) 2014-06-18
CN103873290B CN103873290B (zh) 2018-01-23

Family

ID=50911439

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310627208.1A Active CN103873290B (zh) 2012-12-14 2013-11-29 一种用于评估应用的性能的方法和系统

Country Status (2)

Country Link
US (3) US9934054B2 (zh)
CN (1) CN103873290B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107636612A (zh) * 2015-03-27 2018-01-26 英特尔公司 用于移动应用的实时迁移的应用容器

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9608933B2 (en) * 2013-01-24 2017-03-28 Hitachi, Ltd. Method and system for managing cloud computing environment
US9582219B2 (en) 2013-03-12 2017-02-28 Netapp, Inc. Technique for rapidly converting between storage representations in a virtualized computing environment
US10216531B2 (en) 2014-05-12 2019-02-26 Netapp, Inc. Techniques for virtual machine shifting
US9841991B2 (en) * 2014-05-12 2017-12-12 Netapp, Inc. Techniques for virtual machine migration
CN105451258B (zh) * 2014-09-26 2019-10-25 优视科技有限公司 一种测试处理方法及装置
KR102320149B1 (ko) 2015-02-16 2021-11-01 삼성전자주식회사 어플리케이션을 실행하는 전자 장치 및 그 제어 방법
US9817592B1 (en) 2016-04-27 2017-11-14 Netapp, Inc. Using an intermediate virtual disk format for virtual disk conversion
US10178173B2 (en) * 2016-08-02 2019-01-08 International Business Machines Corporation Cloud service utilization
US10581675B1 (en) * 2017-05-04 2020-03-03 Amazon Technologies, Inc. Metadata-based application and infrastructure deployment
CN107357908B (zh) * 2017-07-17 2020-07-03 浪潮(北京)电子信息产业有限公司 一种虚拟机系统文件的检测方法与装置
US10983886B2 (en) 2018-12-18 2021-04-20 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US10958720B2 (en) 2018-12-18 2021-03-23 Storage Engine, Inc. Methods, apparatuses and systems for cloud based disaster recovery
US11489730B2 (en) 2018-12-18 2022-11-01 Storage Engine, Inc. Methods, apparatuses and systems for configuring a network environment for a server
US11252019B2 (en) 2018-12-18 2022-02-15 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US10887382B2 (en) 2018-12-18 2021-01-05 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US11176002B2 (en) 2018-12-18 2021-11-16 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US11178221B2 (en) 2018-12-18 2021-11-16 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US10776158B2 (en) * 2019-01-31 2020-09-15 Lockheed Martin Corporation Management of application deployment across multiple provisioning layers
US10785611B1 (en) * 2019-06-03 2020-09-22 Motorola Solutions, Inc. Method and cloud service for updating a cloud component
US11637896B1 (en) 2020-02-25 2023-04-25 Pure Storage, Inc. Migrating applications to a cloud-computing environment
US11868622B2 (en) 2020-02-25 2024-01-09 Pure Storage, Inc. Application recovery across storage systems
CA3105553A1 (en) * 2021-01-11 2022-07-11 Walmart Apollo, Llc Cloud-based sftp server system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1696902A (zh) * 2004-05-11 2005-11-16 国际商业机器公司 迁移虚拟机的系统、方法和程序
EP2028592A1 (en) * 2007-08-20 2009-02-25 Hitachi, Ltd. Storage and server provisioning for virtualized and geographically dispersed data centers
US20110154331A1 (en) * 2009-12-18 2011-06-23 International Business Machines Corporation Cloning virtual machines in a virtual computer environment
US8239840B1 (en) * 2010-03-10 2012-08-07 Google Inc. Sensor simulation for mobile device applications
CN102662757A (zh) * 2012-03-09 2012-09-12 浪潮通信信息系统有限公司 一种云计算程序平滑迁移的资源需求预估方法
US8286174B1 (en) * 2006-04-17 2012-10-09 Vmware, Inc. Executing a multicomponent software application on a virtualized computer platform

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7228337B1 (en) * 2001-09-11 2007-06-05 Cisco Technology, Inc. Methods and apparatus for providing a network service to a virtual machine
US7774762B2 (en) 2003-09-15 2010-08-10 Trigence Corp. System including run-time software to enable a software application to execute on an incompatible computer platform
US7757291B2 (en) 2003-09-15 2010-07-13 Trigence Corp. Malware containment by application encapsulation
CA2482248A1 (en) 2003-09-22 2005-03-22 Donn Rochette A computing system having user mode critical system elements as shared libraries
US8443365B2 (en) * 2010-11-03 2013-05-14 Hewlett-Packard Development Company, L.P. Methods and systems to clone a virtual machine instance
US20130247136A1 (en) * 2012-03-14 2013-09-19 International Business Machines Corporation Automated Validation of Configuration and Compliance in Cloud Servers

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1696902A (zh) * 2004-05-11 2005-11-16 国际商业机器公司 迁移虚拟机的系统、方法和程序
US8286174B1 (en) * 2006-04-17 2012-10-09 Vmware, Inc. Executing a multicomponent software application on a virtualized computer platform
EP2028592A1 (en) * 2007-08-20 2009-02-25 Hitachi, Ltd. Storage and server provisioning for virtualized and geographically dispersed data centers
US20110154331A1 (en) * 2009-12-18 2011-06-23 International Business Machines Corporation Cloning virtual machines in a virtual computer environment
US8239840B1 (en) * 2010-03-10 2012-08-07 Google Inc. Sensor simulation for mobile device applications
CN102662757A (zh) * 2012-03-09 2012-09-12 浪潮通信信息系统有限公司 一种云计算程序平滑迁移的资源需求预估方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107636612A (zh) * 2015-03-27 2018-01-26 英特尔公司 用于移动应用的实时迁移的应用容器
CN107636612B (zh) * 2015-03-27 2022-04-19 英特尔公司 应用迁移装置、方法与存储介质

Also Published As

Publication number Publication date
US10761873B2 (en) 2020-09-01
US9934054B2 (en) 2018-04-03
US20140172406A1 (en) 2014-06-19
US20140172405A1 (en) 2014-06-19
US9934055B2 (en) 2018-04-03
CN103873290B (zh) 2018-01-23
US20180121230A1 (en) 2018-05-03

Similar Documents

Publication Publication Date Title
CN103873290A (zh) 一种用于评估应用的性能的方法和系统
US9330106B2 (en) Selective synchronization of remotely stored content
JP5937724B2 (ja) ネットワーク複製のための技法
CN103294765B (zh) 用于供应和转换虚拟设备的基于策略的方法的方法和系统
RU2653292C2 (ru) Перенос служб через границы кластеров
US20150149989A1 (en) Server system and update method thereof
US20140007092A1 (en) Automatic transfer of workload configuration
JP2016505930A (ja) 協調的cax編集のためのシステム、方法、および装置
CN104158886A (zh) 一种应用程序的流式执行方法
US20150178105A1 (en) Method and System for Optimizing Virtual Disk Provisioning
US11425054B1 (en) User-configured multi-location service deployment and scaling
US20120179778A1 (en) Applying networking protocols to image file management
TW201351264A (zh) 分散式文檔儲存系統及方法
CN106302640A (zh) 数据请求处理方法及装置
US20150066847A1 (en) System and method for migrating data from a source file system to a destination file system with use of attribute manipulation
Vaquero et al. Deploying large-scale datasets on-demand in the cloud: treats and tricks on data distribution
US11765244B1 (en) Latency-based service discovery and routing for multi-location service-oriented applications
Tang et al. Application centric lifecycle framework in cloud
CN104519137B (zh) Host文件的管理方法、装置和系统
JP5525740B2 (ja) 仮想アプライアンスサーバ管理方法及びシステム
CN109471894B (zh) 一种新型分散式文件与对象统一存储的系统及方法
TWI537750B (zh) 支援實體檔案系統之檔案管理的方法及應用該方法的檔案伺服器
US20240152372A1 (en) Virtual representations of endpoints in a computing environment
CN103793239A (zh) 云端丛集系统及其开机部署方法
WO2016120885A1 (en) Deploying software products

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant