CN112860382A - 线程化作为服务 - Google Patents
线程化作为服务 Download PDFInfo
- Publication number
- CN112860382A CN112860382A CN202110268031.5A CN202110268031A CN112860382A CN 112860382 A CN112860382 A CN 112860382A CN 202110268031 A CN202110268031 A CN 202110268031A CN 112860382 A CN112860382 A CN 112860382A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- request
- user code
- container
- user
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
一种服务管理用于用户代码的低延时执行的多个虚拟机实例。所述多个虚拟机实例可基于预定配置集合来配置。一个或多个容器可在所述虚拟机实例内创建。响应于执行用户代码的请求,所述服务识别适于执行所述用户代码的预配置的虚拟机实例。所述服务可将所述识别的虚拟机实例分配给所述用户,在已分配给所述用户的实例内创建新的容器,或者重新使用已创建用于执行所述用户代码的容器。当所述用户代码在超时期间未激活时,所述服务可使所述虚拟机实例的分配无效,毁坏所述容器。从接收所述请求到开始代码执行的时间小于预定持续时间,例如100ms。
Description
本申请是申请号为201580053106.0、申请日为2015年9月29日、发明名称为“线程化作为服务”的专利申请的分案申请。
对同时提交申请的交叉引用
本申请的申请人在2014年9月30日同时提交以下美国专利申请:
以上引用的申请的公开内容通过引用整体并入本文。
背景
一般来说,计算装置利用通信网络或一系列通信网络进行数据交换。公司和组织操作互连许多计算装置来支持操作或者向第三方提供服务的计算机网络。计算系统可位于单一地理位置或者位于多个不同地理位置中(例如,经由私有或公共通信网络互连)。确切地,数据中心或数据处理中心(在本文中总体称之为“数据中心”)可包括多个互连的计算系统以向数据中心的用户提供计算资源。数据中心可以是代表某一组织操作的私有数据中心或代表公众或者为了公众的利益操作的公共数据中心。
为了促进数据中心资源的加大利用,虚拟化技术可允许单个物理计算装置托管虚拟机的一个或多个实例,所述虚拟机作为独立计算装置向数据中心的用户展现并操作。利用虚拟化,单个物理计算装置可按照动态方式创建、维护、删除或以其他方式管理虚拟机。进而,用户可从数据中心请求计算机资源,包括单一计算装置或联网计算装置配置,并且可提供用户不同数目的虚拟机资源。
在一些场景中,虚拟机实例可根据多个虚拟机实例类型进行配置以提供特定功能性。例如,各种计算装置可与操作系统或操作系统配置、虚拟化硬件资源和软件应用的不同组合相关联,以使得计算装置能够提供不同的所希望的功能性,或者更有效地提供类似功能性。这些虚拟机实例类型配置经常包含在装置图像内,所述装置图像包括静态数据,所述静态数据包含虚拟机在被启动时将运行的软件(例如,OS和应用以及它们的配置和数据文件等)。装置图像典型地存储在用来创建或初始化实例的硬盘上。因此,计算装置可处理装置图像以便实现所希望的软件配置。
附图简述
当结合附图参阅以下详细描述时,本公开的上述方面和许多伴随的优点将变得更容易明白,同时变得更好理解,附图中:
图1是描绘用于获取低延时计算能力的说明性环境的框图;
图2描绘提供用于获取低延时计算能力的虚拟计算系统管理器的计算装置的总体架构;
图3是示出根据示例性方面的由工作器管理器实现的低延时计算能力获取例程的流程图;并且
图4是示出处理执行用户代码的请求的虚拟机实例管理过程的框图。
详细描述
公司和组织不再需要获取和管理他们自己的数据中心来执行计算操作(例如,执行代码,包括线程、程序、软件、例程、子例程、进程等)。随着云计算的出现,传统上由硬件计算装置提供的存储空间和计算能力现在可在数分钟内通过互联网获得并配置。因此,开发者可快速购买期望量的计算资源,而不必担心获取物理机器。这类计算资源通常以虚拟计算资源或虚拟机实例的形式来购买。在具有其自己的操作系统和其他软件部件的物理计算装置上托管的虚拟机的这些实例可以以与物理计算机相同的方式加以利用。
然而,即使在购买虚拟计算资源时,开发者仍不得不决定要购买的虚拟机实例的数量和类型以及持有时间。例如,根据它们租用的类型和小时数,使用虚拟机实例的成本可能不同。另外,虚拟机可被租用的最小时间典型地以小时计。进一步地,开发者不得不指定安装在虚拟机上的硬件和软件资源(例如,操作系统类型和语言运行时间等)。它们可能具有的其他问题包括利用过度(例如,获取极少计算资源而面临性能问题)、利用不足(例如,获取比运行代码所需更多的计算资源,并且因此付费过度)、流量变化预测(例如,以使得它们了解何时放大规模或减小规模)以及实例和语言运行时间启动延迟(这可花费3-10分钟或者更长,即使用户可能希望计算能力以秒或者甚至毫秒计)。因此,需要一种允许用户利用由服务提供商提供的虚拟机实例的改进方法。
根据本公开的各方面,通过维护一旦接收到用户请求就准备好使用的预初始化虚拟机实例的池,与执行用户代码相关联的延迟(有时称为延时)(例如,实例和语言运行时间启动时间)可显著减少。
一般来说,本公开的各方面涉及对虚拟机实例和其中创建的容器的管理。具体地,公开有助于虚拟计算系统中的虚拟机实例的管理的系统和方法。虚拟计算系统维护在其上加载有一个或多个软件部件(例如,操作系统、语言运行时间、库等)的虚拟机实例的池。池中的虚拟机实例可指定来服务用户请求以执行程序代码。程序代码可在虚拟机实例上创建的隔离容器中执行。由于池中的虚拟机实例已经被启动并且在接收到请求时加载有特定的操作系统和语言运行时间,所以与发现可处理请求(例如,通过在虚拟机实例上创建的一个或多个容器中执行用户代码)的计算能力相关联的延迟显著减少。
在另一方面,虚拟计算系统可在一个或多个物理计算装置上维护虚拟机实例的池,其中每个虚拟机实例在其上加载有一个或多个软件部件。当虚拟计算系统接收到执行用户的程序代码的的请求,其
指定用于执行用户的程序代码的一个或多个计算约束,虚拟计算系统可基于由所述请求指定的一个或多个计算约束来选择虚拟机实例以用于执行用户的程序代码,并且致使用户的程序代码在所选择的虚拟机实例上执行。
一般来说,本公开的各方面涉及对虚拟机实例的管理以使得其能够线程化作为服务。具体地,公开系统和方法,其通过利用虚拟机实例管理器来有助于虚拟机实例的管理,以使得服务可接收用户代码(线程、程序等)并且以高度可扩展、低延时的方式执行代码,而不需要虚拟机实例的用户配置。虚拟机实例管理器管理可执行由各种编程语言中的任一种书写的用户代码的虚拟机实例。虚拟机实例管理器可在接收用户代码之前并且在从用户接收关于任何特定虚拟机实例配置的任何信息之前,根据预定的配置集合来创建并配置虚拟机实例。相反,虚拟机实例管理器可预配置并建立各种虚拟机实例,每个虚拟机实例具有对应于各种运行时间环境中的任何一个或多个的配置。响应于执行用户代码的请求,虚拟机实例管理器可基于与请求相关联的配置信息来识别预配置的虚拟机实例,并且分配所识别的虚拟机实例来执行用户代码。虚拟机实例管理器可基于执行用户代码的请求的配置信息在所分配的虚拟机实例内创建并配置容器。在一些情况下,虚拟机实例管理器可识别已经分配给相同用户账户的虚拟机实例中的现有容器。单个虚拟机实例内的容器可同时托管同一用户代码的多个副本,并且如果在操作策略下允许的话,也可托管不同用户代码的副本。在一些情况下,虚拟机实例管理器通过利用各种辅助服务来管理并有助于由容器对所请求的用户代码的执行。
现在将参考附图描述本公开的具体实施方案和示例性应用。这些实施方案和示例性应用旨在说明而非限制本公开。
通过说明,各种示例性用户计算装置102被示出与虚拟计算系统110(包括台式计算机、膝上型计算机和移动电话)通信。一般地,用户计算装置102可以是任何计算装置,诸如台式电脑、膝上型电脑、移动电话(或智能电话)、平板电脑、信息亭、无线装置和其他电子装置。另外,用户计算装置102可包括在相同或不同数据中心上运行的web服务,其中例如不同的web服务可以编程方式彼此通信以便实行本文所描述的一个或多个技术。进一步地,用户计算装置102可包括物联网(IoT)装置,诸如互联网设施和连接装置。虚拟计算系统110可向用户计算装置102提供一个或多个用户界面、命令行界面(CLI)、应用编程界面(API)和/或其他程序设计界面以便于生成和上传用户代码、调用用户代码(例如,提交在虚拟计算系统110上执行用户代码的请求)、调度基于事件的作业或基于时间的作业、追踪用户代码、和/或查看与它们的请求和/或用户代码有关的其他日志或监测信息。尽管一个或多个实施方案在本文中可被描述为使用用户界面,但应了解此类实施方案可另外地或可替代地使用任何CLI、API或其他程序设计界面。
用户计算装置102通过网络104访问虚拟计算系统110。网络104可为任何有线网络、无线网络或其组合。此外,网络104可为个人局域网、局域网、广域网、空中广播网络(例如,用于无线电或电视)、电缆网络、卫星网络、蜂窝电话网络或其组合。例如,网络104可为可能由各种不同方(诸如互联网)操作的链接网络的公共可访问网络。在一些实施方案中,网络104可为私有或半私有网络,诸如公司或大学内联网。网络104可包括一个或多个无线网络,诸如全球移动通信系统(GSM)网络、码分多址(CDMA)网络、长期演进(LTE)网络或任何其他类型的无线网络。网络104可使用协议和部件以用于通过互联网或任何其他前述类型的网络进行通信。例如,由网络104使用的协议可包括超文本传输协议(HTTP)、HTTP安全(HTTPS)、消息队列遥测传输(MQTT)、约束应用协议(CoAP)等。用于通过互联网或任何其他前述类型的通信网络进行通信的协议和部件对于本领域技术人员来说是众所周知的,并且因此不在本文中更详细地进行描述。
虚拟计算系统110在图1中被描绘成在包括使用一个或多个计算机网络互连的若干计算机系统的分布式计算环境中操作。虚拟计算系统110还可在具有比图1所例示更少或更多数目的装置的计算环境内操作。因此,图1中的虚拟计算系统110的描绘应被视为说明性的而不是对本公开的限制。例如,虚拟计算系统110或其各种组成可实现各种Web服务部件、已托管或“云”计算环境、和/或对等网络配置以便实现本文所描述的进程的至少一部分。
此外,虚拟计算系统110可实现在硬件和/或软件中并且可例如包括实现在物理计算机硬件上的一个或多个物理或虚拟服务器,所述一个或多个物理或虚拟服务器被配置来执行计算机可执行指令以用于实行本文将描述的各个特征。一个或多个服务器在可以是地理上分散的或者地理上协同定位在例如一个或多个数据中心中。
在图1所示的环境中,虚拟环境100包括虚拟计算系统110,其包括前端120、预热池管理器(warming pool manager)130和工作器管理器140。在所描绘的实例中,虚拟机实例(“实例”)152、154在由预热池管理器130管理的预热池130A中示出,并且实例156、158在由工作器管理器140管理的活性池140A中示出。虚拟计算系统110内的各个部件的图示在本质上是逻辑的,并且部件中的一个或多个可由单个计算装置或多个计算装置实现。例如,实例152、154、156、158可在不同的各种地理区域中的一个或多个物理计算装置上实现。类似地,前端120、预热池管理器130和工作器管理器140中的每一个可跨多个物理计算装置实现。或者,前端120、预热池管理器130和工作器管理器140中的一个或多个可在单个物理计算装置上实现。在一些实施方案中,虚拟计算系统110可包括多个前端、多个预热池管理器和/或多个工作器管理器。尽管在图1的实例中示出四个虚拟机实例,但是本文描述的实施方案不限于此,并且本领域技术人员将理解,虚拟计算系统110可包括使用任何数量的物理计算装置实现的任何数量的虚拟机实例。类似地,尽管在图1的实例中示出单个预热池和单个活性池,但是本文描述的实施方案不限于此,并且本领域技术人员将理解,虚拟计算系统110可包括任何数量的预热池和活性池。
在图1的实例中,虚拟计算系统110被例示为连接到网络104。在一些实施方案中,虚拟计算系统110内的部件中的任一个可经由网络104与虚拟环境100的其他部件(例如,用户计算装置102和辅助服务106,所述辅助服务106可包括监测/日志/记账服务107、存储服务108、实例供应服务109、和/或可与虚拟计算系统110通信的其他服务)通信。在其他实施方案中,并不是虚拟计算系统110的所有部件都能够与虚拟环境100的其他部件通信。在一个实例中,只有前端120可连接到网络104,而虚拟计算系统110的其他部件可经由前端120与虚拟环境100的其他部件通信。
用户可使用虚拟计算系统110以在其上执行用户代码。例如,用户可希望结合用户已经开发出的web或移动应用运行一段代码。一种运行代码的方法将是从服务提供商获取虚拟机实例,所述服务提供商提供基础设施作为服务、配置虚拟机实例以便符合用户的需求、并且使用经配置虚拟机实例来运行代码。或者,用户可将代码执行请求发送到虚拟计算系统110。虚拟计算系统110可基于代码执行请求处理计算能力(例如,容器、实例等,其在以下有更详细描述)的获取和配置,并且使用计算能力执行代码。虚拟计算系统110可基于体积自动放大规模和减小规模,由此使用户释放不得不担心利用过度(例如,获取极少计算资源并且面临性能问题)或利用不足(例如,获取比运行代码所需更多的计算资源,并且因此付费过度)的负担。
前端120处理在虚拟计算系统110上执行用户代码的所有请求。在一个实施方案中,前端120用作由虚拟计算系统110提供的所有其他服务的前门。前端120处理请求并确保请求被正确地授权。例如,前端120可确定与请求相关联的用户是否被授权访问在请求中指定的用户代码。
本文使用的用户代码可指以特定程序语言书写的任何程序代码(例如,程序、例程、子例程、线程等)。在本公开中,术语“代码”、“用户代码”和“程序代码”可互换使用。这种用户代码可被执行来例如结合由用户开发的特定web应用或移动应用实现特定任务。例如,用户代码可以JavaScript(node.js)、Java、Python和/或Ruby书写。请求可包括用户代码(或其位置)以及用于执行所述用户代码的一个或多个自变量。例如,用户可提供用户代码连同执行所述用户代码的请求。在另一个实例中,请求可通过其名称或其唯一ID识别先前上传的程序代码(例如,使用API以上传代码)。在又一个实例中,代码可被包括在请求中以及在请求由虚拟计算系统110接收之前被上传到单独位置(例如,存储服务108或虚拟计算系统110内部的存储系统)中。虚拟计算系统110可基于处理请求时可获得代码的位置改变其代码执行策略。
前端120可响应于来自用户的超文本传输协议安全(HTTPS)请求来接收执行此类用户代码的请求。并且,包括在HTTPS请求中的任何信息(例如,标头和参数)也可在执行用户代码时被处理并利用。如以上所论述的,任何其他协议,包括例如HTTP、MQTT和CoAP,可用来将包含代码执行请求的消息传送至前端120。前端120还可在事件被监测到时接收执行此类用户代码的请求,所述事件诸如用户已登记来触发自动请求生成的事件。例如,用户可能已经使用辅助服务106登记用户代码并且规定无论何时发生特定事件(例如,上传新文件),都要将执行用户代码的请求发送到前端120。或者,用户可能已经登记定时作业(例如,每24小时执行用户代码)。在这种实例中,当定时作业的预定时间达到时,执行用户代码的请求可被发送到前端120。在又一个实例中,前端120可具有输入代码执行请求的队列,并且当用户的批量作业从虚拟计算系统的工作队列被移除时,前端120可处理用户请求。在又一个实例中,请求可来源于虚拟计算系统110内的另一个部件或者图1未例示的其他服务器或服务。
用户请求可指定将要与用户代码一起使用的一个或多个第三方库(包括本地库)。在一个实施方案中,用户请求是包含用户代码和任何库(和/或其存储位置的标识)的ZIP文件。在一些实施方案中,用户请求包括元数据,所述元数据指示待执行的程序代码、书写程序代码的语言、与请求相关联的用户和/或保留用于执行程序代码的计算资源(例如,存储器等)。例如,程序代码可随请求提供,由用户先前上传,由虚拟计算系统110(例如,标准例程)提供,和/或由第三方提供。在一些实施方案中,此类资源水平约束(例如,多少存储器分配用于执行特定用户代码)被指定用于特定用户代码,并且在每次执行用户代码时可能不会改变。在此类情况下,虚拟计算系统110可在每个单独请求被接收到之前能够访问此类资源水平约束,并且所述单独请求可能不会指定此类资源水平约束。在一些实施方案中,用户请求可指定其他约束,诸如指示请求具有的用以执行用户代码的许可种类的许可数据。此类许可数据可由虚拟计算系统110使用来访问专用资源(例如,专用网络上)。
在一些实施方案中,用户请求可指定应当被采用以用于处理用户请求的行为。在此类实施方案中,用户请求可包括用于实现一个或多个执行模式的指示符,其中待执行与用户请求相关联的用户代码。例如,请求可包括用于指示是否应在调试模式中执行用户代码的标志或标头,其中可结合用户代码的执行生成的调试和/或日志输出被往回提供给用户(例如,经由控制台用户界面)。在这种实例中,虚拟计算系统110可检查请求并且查找标志或标头,并且如果存在,那么虚拟计算系统110可修改用户代码在其中执行的容器的行为(例如,日志设备)并且致使输出数据往回提供给用户。在一些实施方案中,行为/模式指示符通过由虚拟计算系统110提供给用户的用户界面添加到请求。其他特征诸如源代码剖析、远程调试等也可基于请求中提供的指示实现或禁用。
在一些实施方案中,虚拟计算系统110可包括多个前端120。在此类实施方案中,负载平衡器可被提供来例如以循环方式将输入请求分配给多个前端120。在一些实施方案中,负载平衡器将输入请求分配给多个前端120的方式可基于预热池130A和/或活性池140A的状态。例如,如果认为预热池130A的容量足够,那么请求可基于前端120的单独容量(例如,基于一个或多个负载平衡限制)被分配给多个前端120。另一方面,如果预热池130A的容量小于阈值量,那么此类负载平衡限制中的一个或多个可被移除,使得请求可以降低或最小化从预热池130A取得的虚拟机实例的数目的方式被分配给多个前端120。例如,即便,根据负载平衡限制,请求将被发送到前端A,如果前端A需要从预热池130A中取出实例以用来服务请求但前端B可使用其活性池中的实例中的一个来服务相同请求,那么所述请求可被发送到前端B。
当虚拟计算系统110接收到在虚拟计算系统110上执行用户代码的请求时,预热池管理器130确保虚拟机实例准备好由工作器管理器140使用。在图1所示的实例中,预热池管理器130管理预热池130A,所述预热池130A是可用于服务输入的用户代码执行请求的预初始化和预配置的虚拟机实例的组(有时称为池)。在一些实施方案中,预热池管理器130致使虚拟机实例在虚拟计算系统110内的一个或多个物理计算机器上启动并添加到预热池130A。在其他实施方案中,预热池管理器130与辅助虚拟管理实例服务(例如,图1的辅助服务106)通信以创建新实例并将其添加到预热池130A。例如,预热池管理器130可基于预热池130A中的可用容量来致使附加的实例被添加到预热池130A,以服务输入的请求。在一些实施方案中,预热池管理器130可利用虚拟计算系统110内的物理计算装置和一个或多个虚拟机实例服务来获取并维护可用于服务由前端120接收的代码执行请求的计算能力。在一些实施方案中,虚拟计算系统110可包括用于控制(例如,增加或减少)预热池130A中的可用容量的一个或多个逻辑旋钮或开关。例如,系统管理员可使用这种旋钮或开关来在高峰时间期间增加预热池130A中可用的容量(例如,预启动实例的数量)。在一些实施方案中,预热池130A中的虚拟机实例可基于预定配置集合独立于执行用户代码的特定用户请求来进行配置。预定配置集合可对应于执行用户代码的各种类型的虚拟机实例。预热池管理器130可基于与当前或先前用户代码执行相关的一个或多个度量来优化预热池130A中的虚拟机实例的类型和数量。
如图1所示,实例可在其上加载有操作系统(OS)和/或语言运行时间。例如,由预热池管理器130管理的预热池130A包括实例152、154。实例152包括OS 152A和运行时间152B。实例154包括OS 154A。在一些实施方案中,预热池130A中的实例还可包括容器(所述容器还可包含操作系统、运行时间、用户代码等的副本),这在以下有更详细的描述。尽管图1所示的实例152包括单个运行时间,但在其他实施方案中,图1所描绘的实例可包括两个或更多个运行时间,其中每个运行时间可用于运行不同的用户代码。在一些实施方案中,预热池管理器130可维持预热池130A中的实例列表。实例列表可进一步指定实例的配置(例如,OS、运行时间、容器等)。
在一些实施方案中,预热池130A中的虚拟机实例可用于服务任何用户的请求。在一个实施方案中,预热池130A中的所有虚拟机实例以相同或基本相似的方式进行配置。在另一实施方案中,预热池130A中的虚拟机实例可不同地配置,以适合不同用户的需要。例如,虚拟机实例其上可加载有不同的操作系统、不同的语言运行时间和/或不同的库。在又一实施方案中,预热池130A中的虚拟机实例可以以相同或基本相似的方式(例如,利用相同的OS、语言运行时间和/或库)来配置,但是这些实例中的一些可具有不同的容器配置。例如,一个实例可具有在其中创建的用于运行以Python书写的代码的容器,并且另一实例可具有在其中创建的用于运行以Ruby书写的代码的容器。在一些实施方案中,提供多个预热池130A,每个预热池130A具有相同配置的虚拟机实例。
预热池管理器130可预配置预热池130A中的虚拟机实例,以使得每个虚拟机实例被配置来满足可由在虚拟计算系统110上执行程序代码的用户请求来请求或指定的操作条件中的至少一个。在一个实施方案中,操作条件可包括潜在用户代码可以其书写的程序语言。例如,此类语言可包括Java、JavaScript、Python、Ruby等。在一些实施方案中,用户代码可以其书写的语言集合可局限于预定集合(例如,4种语言的集合,尽管在一些实施方案中提供多于或少于四种语言的集合)以便促进可满足执行用户代码的请求的虚拟机实例的预初始化。例如,当用户正经由虚拟计算系统110所提供的用户界面来配置请求时,所述用户界面可提示用户指定预定操作条件中的一个以执行用户代码。在另一个实例中,用于利用虚拟计算系统110所提供的服务的服务水平协定(SLA)可指定用户请求应满足的条件集合(例如,编程语言、计算资源等),并且虚拟计算系统110在处理请求时可假设所述请求满足所述条件集合。在另一个实例中,请求中所指定的操作条件可包括:用于处理请求的计算能力的量;请求的类型(例如,HTTP对比触发事件);请求的超时(例如,请求在其后可终止的阈值时间);安全策略(例如,可控制预热池130A中的哪些实例可由哪个用户使用);等。
工作器管理器140管理用于服务输入代码执行请求的实例。在图1例示的实例中,工作器管理器140管理活性池140A,所述活性池140A是当前分配给一个或多个用户的虚拟机实例组(有时称为池)。尽管虚拟机实例在本文中被描述为分配给特定用户,但在一些实施方案中,实例可被分配给用户组,使得实例与所述用户组绑定并且所述组中的任何成员可利用实例上的资源。例如,相同组中的用户可属于相同的安全组(例如,基于它们的安全凭证),使得在特定实例上的一个容器中执行一个成员的代码之后在相同实例上的另一个容器中执行另一个成员的代码不会造成安全风险。类似地,工作器管理器140可根据指定哪些请求可在哪些容器中执行以及哪些实例可被分配给哪些用户的一个或多个策略来分配实例和容器。示例性策略可指定实例被分配给共享相同账户(例如,用于访问由虚拟计算系统110提供的服务的账户)的用户集合。在一些实施方案中,与相同用户组相关联的请求可共享相同的容器(例如,如果与其相关联的用户代码相同)。在一些实施方案中,请求不会在不同的用户组之间进行区分而仅仅指示与请求相关联的用户所属的组。
如图1所示,实例可具有操作系统(OS)、语言运行时间和容器。容器可具有在其上加载的OS以及运行时间和用户代码的单独副本。在图1的实例中,由工作器管理器140管理的活性池140A包括实例156、158。实例156具有OS 156A、运行时间156B、156C和容器156D、156E。容器156D包括OS 156A的副本、运行时间156B的副本和代码156D-1的副本。容器156E包括OS 156A的副本、运行时间156C的副本和代码156E-1的副本。实例158具有OS 158A、运行时间158B、158C、158E、158F、容器158D和代码158G、158H。容器158D具有OS 158A的副本、运行时间158B的副本和代码158D-1的副本。如图1所示,实例其上可加载有用户代码,并且那些实例内的容器其中也可加载有用户代码。在一些实施方案中,工作器管理器140可维护活性池140A中的实例列表。实例列表还可指定实例的配置(例如,OS、运行时间、容器等)。在一些实施方案中,工作器管理器140可访问预热池130A中的实例列表(例如,包括实例的数量和类型)。在其他实施方案中,工作器管理器140从预热池管理器130请求计算能力,而无需知道预热池130A中的虚拟机实例。
在图1所示的实例中,在称为容器(例如,容器156D、156E、158D)的隔离的虚拟计算系统中执行用户代码。容器是在虚拟机实例内使用所述实例上可用的资源创建的逻辑单元。例如,工作器管理器140可基于在执行用户代码的请求中指定的信息,创建新容器或者定位活性池140A中的一个实例中的现有容器,并将所述容器分配给所述请求以处理与请求相关联的用户代码的执行。在一个实施方案中,这类容器被实现为Linux容器。
一旦请求已由前端120成功处理,工作器管理器140就发现服务所述请求以在虚拟计算系统110上执行用户代码的能力。例如,如果在活性池140A中存在具有其中加载有相同用户代码(例如,在容器156D中示出的代码156D-1)的容器的特定虚拟机实例,那么工作器管理器140可将容器分配给请求并致使用户代码在容器中执行。或者,如果用户代码在虚拟机实例中的一个的本地缓存中可用(例如,存储在实例158上但不属于任何单独的容器的代码158G、158H),那么工作器管理器140可在这种实例上创建新容器,将容器分配给请求,并且致使所使用的代码在容器中被加载并执行。
如果工作器管理器140确定在活性池140A中的任何实例(例如,容器或者实例的本地缓存中)未发现与请求相关联的用户代码,那么工作器管理器140可确定活性池140A中的实例中的任一个当前是否被分配给与所述请求相关联的用户并且是否具有处理当前请求的计算能力。如果存在这种实例,那么工作器管理器140可在实例上创建新的容器并且将所述容器分配给请求。或者,工作器管理器140可进一步配置分配给用户的实例上的现有容器,并且将所述容器分配给请求。例如,如果其上加载有当前用户请求所要求的特定库,那么工作器管理器140可确定现有容器可用来执行用户代码。在这种情况下,工作器管理器140可将特定库和用户代码加载到容器之上并且使用所述容器来执行所述用户代码。
如果活性池140不包含当前分配给用户的任何实例,那么工作器管理器140从预热池130A中拉出新的虚拟机实例,将所述实例分配给与所述请求相关联的用户,在所述实例上创建新的容器,将容器分配给请求,并且致使用户代码被下载并在容器上执行。
在一些实施方案中,虚拟计算系统110被适配成在用户代码被接收(例如,被前端120接收)之后不久开始执行用户代码。可根据启动(例如,与用户相关联的虚拟机实例上的容器中的)用户代码的执行与接收执行所述用户代码的请求(例如,由前端接收)之间的时间差来确定时间段。虚拟计算系统110被适配来在小于预定持续时间的时间段内开始执行用户代码。在一个实施方案中,预定持续时间是500ms。在另一个实施方案中,预定持续时间是300ms。在另一个实施方案中,预定持续时间是100ms。在另一个实施方案中,预定持续时间是50ms。在另一个实施方案中,预定持续时间是10ms。在另一个实施方案中,预定持续时间可以是选自10ms至500ms的范围内的任何值。在一些实施方案中,虚拟计算系统110被适配来如果满足一个或多个条件那么在小于预定持续时间的时间段内开始执行用户代码。例如,一个或多个条件可包括以下中的任一个:(1)在接收到请求时用户代码被加载在活性池140中的容器上;(2)在接收到请求时用户代码被存储在活性池140中的实例的代码缓存中;(3)在接收到请求时活性池140A包含分配给与所述请求相关联的用户的实例;或者(4)在接收到请求时预热池130A具有处理请求的能力。
用户代码可从诸如图1的存储服务108的辅助服务106下载。图1例示的数据108A可包括由一个或多个用户上传的用户代码、与此类用户代码相关联的元数据、或者由虚拟计算系统110利用来执行本文所描述的一个或多个技术的任何其他数据。尽管图1的实例中仅例示存储服务108,但虚拟环境100可包括用户代码可从其下载的其他水平的存储系统。例如,每个实例可具有与容器在其上创建的实例物理地(例如,驻留在实例在其上运行的物理计算系统上的本地存储装置)或逻辑地(例如,与实例处于网络通信并且设置在虚拟计算系统110内部或外部的网络连接的存储系统)相关联的一个或多个存储系统。或者,代码可从由存储服务108提供的基于web的数据存储区下载。
一旦工作器管理器140定位到预热池130A中的可用于服务用户代码执行请求的一个虚拟机实例,预热池管理器130或工作器管理器140从预热池130A中取出实例并且将其分配给与请求相关联的用户。所分配的虚拟机实例被从预热池130A取出并且放置在活性池140A中。在一些实施方案中,当虚拟机实例已经被分配给特定用户时,相同的虚拟机实例不能用来服务任何其他用户的请求。这通过防止可能的用户资源的共混而为用户提供了安全效益。或者,在一些实施方案中,属于不同用户(或者分配给与不同用户相关联的请求)的多个容器可共同存在于单个虚拟机实例上。这种方式可提高可用计算能力的利用率。
在一些实施方案中,虚拟计算系统110可维护单独的缓存,其中存储用户代码以用作虚拟机实例的本地缓存与(例如,可通过网络104访问的)基于web的网络存储装置之间的中间水平的缓存系统。在下文参考图4更详细地描述工作器管理器140在服务请求时可能遇到的各种情境。
在已经执行用户代码之后,工作器管理器140可拆卸用来执行用户代码的容器以便释放其占用的资源以供用于实例中的其他容器。或者,工作器管理器140可保持容器运行以便使用其来服务来自相同用户的附加请求。例如,如果另一个请求与已经被加载在容器中的相同用户代码相关联,那么所述请求可被分配给相同的容器,由此消除与创建新的容器并且在所述容器中加载用户代码相关联的延迟。在一些实施方案中,工作器管理器140可拆卸用来执行用户代码的容器创建在其中的实例。或者,工作器管理器140可保持实例运行以便使用其来服务来自相同用户的附加请求。确定在用户代码完成执行之后是否保持容器和/或实例运行可基于阈值时间、用户类型、用户的平均请求量和/或其他操作条件。例如,在阈值时间已经经过(例如,5分钟、30分钟、1小时、24小时、30天等)而没有任何活动(例如,代码的运行)之后,容器和/或虚拟机实例被关闭(例如,删除、终止等)并且分配给其的资源被释放。在一些实施方案中,在容器被拆卸之前经过的阈值时间小于在实例被拆卸之前经过的阈值时间。
在一些实施方案中,虚拟计算系统110可在辅助服务106中的一个或多个服务输入的代码执行请求时向辅助服务106中的一个或多个提供数据。例如,虚拟计算系统110可与监测/日志/记账服务107通信。监测/日志/记账服务107可包括:用于管理从虚拟计算系统110接收的监测信息(诸如虚拟计算系统110上的容器和实例的状态)的监测服务;用于管理从虚拟计算系统110接收的日志信息(诸如由虚拟计算系统110上的容器和实例执行的活动)的日志服务;以及用于(例如,基于由监测服务和日志服务管理的监测信息和/或日志信息)生成与在虚拟计算系统110上执行用户代码相关联的记账信息的记账服务。除了可由如上所述的监测/日志/记账服务107(例如,代表虚拟计算系统110)执行的系统水平活动之外,监测/日志/记账服务107可代表在虚拟计算系统110上执行的用户代码提供应用水平服务。例如,监测/日志/记账服务107可监测和/或记录各种输入、输出或者代表在虚拟计算系统110上执行的用户代码的其他数据和参数。尽管示出为单个框,但监测、日志和记账服务107可被提供为单独的服务。
在一些实施方案中,工作器管理器140可对由工作器管理器140管理的实例和容器(例如,活性池140A中的那些)执行健康检查。例如,由工作器管理器140执行的健康检查可包括确定由工作器管理器140管理的实例和容器是否具有以下中的任何问题:(1)配置错误的联网和/或启动配置;(2)耗尽的存储器;(3)毁坏的文件系统;(4)不可兼容的内核;和/或可削弱实例和容器的性能的任何其他问题。在一个实施方案中,工作器管理器140周期性地(例如,每5分钟、每30分钟、每小时、每24小时等)执行健康检查。在一些实施方案中,健康检查的频率可基于健康检查的结果自动调整。在其他实施方案中,健康检查的频率可基于用户请求来调整。在一些实施方案中,工作器管理器140可对预热池130A中的实例和/或容器执行类似的健康检查。预热池130A中的实例和/或容器可与活性池140A中的那些实例和容器一起被管理或者被单独管理。在一些实施方案中,在预热池130A中的实例和/或容器的健康与活性池140A单独管理的情况下,预热池管理器130而不是工作器管理器140可对预热池130A中的实例和/或容器执行上述健康检查。
工作器管理器140可包括用于发现用来服务输入的代码执行请求的计算能力(例如,容器)的实例分配单元以及用于有助于在那些容器上执行用户代码的用户代码执行单元。下文参考图2更详细地描述工作器管理器140的示例性配置。
图2描绘管理虚拟计算系统110中的虚拟机实例的计算系统(称为工作器管理器140)的总体架构。图2中描绘的工作器管理器140的总体架构包括可用于实现本公开的各方面的计算机硬件和软件模块的布置。硬件模块可用物理电子装置来实现,如下文更详细地讨论的。工作器管理器140可包括比图2所示的元件更多(或更少)的元件。然而,没有必要示出所有这些一般常规的元件来提供能够实现的公开。此外,图2中所示的总体架构可用于实现图1所示的一个或多个其他部件。如图所示,工作器管理器140包括处理单元190、网络接口192、计算机可读介质驱动器194、输入/输出装置接口196,它们都可通过通信总线彼此通信。网络接口192可提供到一个或多个网络或计算系统的连接性。因此,处理单元190可通过网络104从其他计算系统或服务接收信息和指令。处理单元190还可与存储器180进行通信,并且还通过输入/输出装置接口196提供用于可选显示器(未示出)的输出信息。输入/输出装置接口196还可接受来自可选输入装置(未示出)的输入。
存储器180可包含处理单元190执行以便实现本公开的一个或多个方面的计算机程序指令(在一些实施方案中被分组成模块)。存储器180通常包括RAM、ROM和/或其他持久性、辅助或非暂时性计算机可读介质。存储器180可存储操作系统184,所述操作系统184提供计算机程序指令以供处理单元190在工作器管理器140的一般管理和操作中使用。存储器180还可包括用于实现本公开的各方面的计算机程序指令和其他信息。例如,在一个实施方案中,存储器180包括用户界面单元182,所述用户界面单元182生成用于例如通过导航和/或浏览界面(诸如安装在计算装置上的浏览器或应用)在计算装置上显示的用户界面(和/或其指令)。此外,存储器180可包括和/或与一个或多个数据储存库(未示出)通信,例如以访问用户程序代码和/或库。
除了用户界面单元182之外和/或与用户界面单元182组合,存储器180可包括可由处理单元190执行的实例分配单元186和用户代码执行单元188。在一个实施方案中,用户界面单元182、实例分配单元186和用户代码执行单元188单独地或共同地实现本公开的各个方面,例如发现将要用于执行用户代码的计算能力(例如,容器),致使用户代码被加载并在容器上执行等,如下文进一步描述的。
实例分配单元186发现将要用于服务执行用户代码的请求的计算能力。例如,实例分配单元186识别满足由请求指定的任何约束的虚拟机实例和/或容器,并将所识别的虚拟机实例和/或容器分配给用户或请求本身。实例分配单元186可基于写入用户代码的编程语言来执行这种识别。例如,如果用户代码以Python书写,那么实例分配单元186可(例如,在图1的预热池130A中)发现其上预加载有Python运行时间的虚拟机实例,并且将虚拟机实例分配给用户。在另一实例中,如果在用户的请求中指定的程序代码已加载在现有容器上或者加载在分配给用户的另一虚拟机实例上(例如,在图1的活性池140A中),那么实例分配单元186可致使所述请求在容器中或在虚拟机实例上的新容器中被处理。在一些实施方案中,如果虚拟机实例在其上加载有多个语言运行时间,那么实例分配单元186可在虚拟机实例上创建新容器并且基于在请求中指定的计算约束来在容器上加载适当的语言运行时间。
一旦特定虚拟机实例已分配给与所述请求相关联的用户并且所述特定虚拟机实例上的容器已分配给所述请求,那么用户代码执行单元188管理由用户的请求指定的程序代码的执行。如果代码被预加载在分配给用户的虚拟机实例上的容器中,那么代码在容器中简单地执行。如果代码通过网络存储装置(例如,图1的存储服务108)可用,那么用户代码执行单元188将代码下载到虚拟机实例上的容器中,并且一旦代码已被下载就致使所述代码被执行(例如,通过与图1的前端120通信)。
虽然实例分配单元186和用户代码执行单元188在图2中被示出为工作器管理器140的一部分,但是在其他实施方案中,实例分配单元186和用户代码执行单元188的全部或一部分可由虚拟计算系统110的其他部件和/或另一计算装置实现。例如,在本公开的某些实施方案中,与虚拟计算系统110通信的另一计算装置可包括与被示出为工作器管理器140的一部分的模块和部件类似地操作的若干模块或部件。
在一些实施方案中,工作器管理器140还可包括除了图2所示的那些部件之外的部件。例如,存储器180还可包括用于管理虚拟机实例内的容器的创建、准备和配置的容器管理器。
现在转向图3,将描述由虚拟计算系统110的一个或多个部件(例如,工作器管理器140)实现的例程300。尽管关于工作器管理器140的实现描述了例程300,但是相关领域的技术人员将理解,替代部件可实现例程300,或者可由不同部件或以分布式方式实现一个或多个块。
在说明性例程300的方框302处,工作器管理器140接收执行用户代码的请求。或者,工作器管理器140从图1的前端120接收请求,以发现用于执行与由前端120接收和处理的输入的请求相关联的用户代码的计算能力。例如,前端120可处理从用户计算装置102或辅助服务106接收的请求,并且在认证用户并确定用户被授权访问指定的用户代码之后将所述请求转发给工作器管理器140。如上所述,请求可包括指示将要执行的程序代码、写入程序代码的语言、与请求相关联的用户和/或保留供执行程序代码之用的计算资源(例如,存储器等)的数据或元数据。例如,请求可指定用户代码将要在“操作系统A”上使用“语言运行时间X”来执行。在这种实例中,工作器管理器140可定位已用“操作系统A”和“语言运行时间X”预先配置的虚拟机实例,并将其分配给用户。随后,工作器管理器140可在虚拟机实例上创建用于在其中执行用户代码的容器。
接下来,在方框304处,工作器管理器140基于请求中所指示的信息来获取计算能力。在一些实施方案中,计算能力包括被配置来服务代码执行请求的容器。如本文所讨论的,容器可从活性池140A或预热池130A获取。下文参照图4更详细地描述如何获取计算能力。
在方框306处,工作器管理器140致使使用计算能力来执行用户代码。例如,工作器管理器140可将分配给所述请求的容器的地址发送到前端120,以使得前端120可向所述地址代理代码执行请求。在一些实施方案中,地址可由工作器管理器140临时保留,并且地址和/或容器可在指定时间段过去之后自动释放。在一些实施方案中,地址和/或容器可在用户代码已在容器中完成执行之后自动地释放。
虽然上文已参考方框302-306描述图3的例程300,但是本文描述的实施方案不限于此,并且可省略、修改或切换一个或多个方框,而不脱离本公开的精神。例如,可修改方框302,以使得工作器管理器140从前端120接收计算能力获取请求。
图4是示出用于处理执行用户代码的请求的虚拟机实例管理的过程的一个实施方案的框图。
在(1)处,虚拟计算系统110的前端120接收执行或部署用户代码的请求。所述请求可通过用户计算装置102传送。在一些实施方案中,所述请求可通过辅助服务106中的一个接收。例如,在一些实施方案中,辅助服务可适于基于与辅助服务106相关联的事件来生成请求。包括事件触发的辅助服务事件生成的附加实例在于2014年9月30日提交的题为PROGRAMMATIC EVENT DETECTION AND MESSA GE GENERATION FOR REQUESTS TO EXECUTEPROGRAM C ODE的代理人案卷号SEAZN.990A的美国申请号TBD中进行描述,所述申请的全部内容通过引用明确地并入本文。所述请求可为执行或部署包括在请求中的程序代码或存储在单独的计算系统中的程序代码的请求。可使用包括Java、PHP、C++、Python等的各种程序语言来组成用户代码。所述请求可包括与代码执行要求相关的配置信息。例如,请求可包括关于书写程序代码的程序语言的信息,关于执行用户代码的语言运行时间和/或语言库的信息。配置信息不需要包括关于可托管用户代码的虚拟机实例的任何特定信息。所述请求还可包括指定用户代码执行结果/活动的报告/存储的策略的信息。例如,所述请求可指定用户代码执行的结果将被同步或异步(批处理)报告给传送用户代码执行请求的计算装置。另外,所述请求可指定用户代码执行结果将由具有或不具有结果的同步报告的辅助服务106来存储。所述请求可包括由用户指定或由前端关于用户代码的执行确定的配置信息。配置信息可对应于执行用户代码的硬件或软件要求。例如,配置信息可对应于在预热池130或活性池140A中可用的预定类型的虚拟机实例中的特定类型的选择。虚拟机类型可基于在虚拟机内创建的容器可用的硬件(例如,存储器、处理器、存储装置等)和软件(例如,操作系统、运行时间环境、库等)资源的预定集合而变化。在一些实施方案中,配置信息可响应于用户代码执行请求来指定允许的延时以获取计算能力。用于获取计算能力的过程和策略可基于可允许的延时而变化。
在(2)处,前端120处理请求。前端120可分析请求并将请求格式化成可由虚拟计算系统110进一步处理的消息。前端处理的附加实例在2014年9月30日提交的题为PROCESSINGEVENT MESSAGES FOR USER REQUESTS TO EXECUTE PROGRAM CODE的代理人案卷号SEAZN.991A的美国申请号TBD中进行描述,所述申请的全部内容通过引用明确地并入本文。
在一些实施方案中,前端120可分析与来自用户计算装置102的请求相关联的用户代码,并确定什么类型的配置适于执行用户代码。例如,前端120可基于与用户代码相关联的标头信息或元数据来识别关于用户代码的编程语言的信息。在一些其他实施方案中,前端120可将请求从用户计算装置102转发到工作器管理器140,而不分析所述请求或用户代码。
继续参考图4,在(3)处,前端120向工作器管理器140发送用于用户代码执行的消息。工作器管理器140基于接收的消息开始定位或获取用于用户代码执行的计算能力的过程。例如,工作器管理器140可在接收或处理请求时定位已经在已与用户相关联的虚拟机实例上创建的容器。在另一个实施方案中,即使适合于执行用户代码的容器尚未创建,工作器管理器140也可在接收或处理请求时定位已与用户相关联的实例。在另一个实施方案中,工作器管理器可从预热池获得已创建的(例如,预热的)实例,将其与用户相关联,并且在实例内创建用于执行用户代码的容器。在一些情况下,可在接收或处理用户代码部署的请求之前在预热的实例内创建预热的容器。
在(4)处,工作器管理器140可获取用于执行或部署用户代码的计算能力。可基于虚拟计算系统110的操作策略或用户代码执行请求中指定的(或由用户代码执行请求暗示的)配置信息中的一个或多个来进行获取计算能力。工作器管理器140可基于配置信息确定资源需求,并创建满足资源需求的至少一个容器。获取计算能力的优先级和限制可与各种因素相关联,所述因素包括响应请求中的延时(在接收请求之后获取计算能力的时间)、记帐约束和安全策略。在一些实施方案中,为了减少响应请求的延时,工作器管理器140尝试分配现有容器以托管用户代码执行,因为创建新容器可能比利用现有容器花费更长时间。如果没有适合于托管用户代码的可用的现有容器,那么工作器管理器140可在与用户相关联的活性虚拟机实例中创建新容器。这种活性虚拟机实例可位于活性池140A中。从预热池130A分配新实例可能比利用活性池140A的活性实例花费更长的时间。如果没有与用户相关联的可用的活性虚拟机实例,那么工作器管理器140可从预热池130A分配新的虚拟机实例,并在其内创建容器以托管用户代码执行。与利用活性实例或活性实例内的现有容器相比,这可能导致更高的延时。在一些实施方案中,可基于操作成本和记帐约束来执行获取计算能力。例如,可确定容器/实例的分配以节省虚拟计算的操作成本或者满足记帐约束,而不管更高的延时。
在(4)处,工作器管理器140识别与从前端120传送的消息内包括的配置信息匹配的虚拟机实例。工作器管理器140可将预热池130A中的虚拟机实例的配置设置与请求的配置信息进行比较,以识别适合于执行用户代码的匹配的虚拟机实例。在一些实施方案中,响应于请求,工作器管理器140可识别已分配给与所述请求相关联的同一个用户账户的虚拟机实例。当虚拟机实例的资源专门为特定用户保留时,安全策略可允许虚拟机实例部署来自同一用户的其他用户代码。因此,在检查预热池130A中的虚拟机实例的可用性之前,工作器管理器140可检查托管与同一用户相关联的其他代码的活性虚拟机实例的可用资源。然而,在一些实施方案中,无论是否存在具有匹配的配置信息的当前活性的虚拟机实例,当由请求指定时或者基于用户代码的需求确定时,用户代码可分配给新的虚拟机实例。如果工作器管理器140确定在已分配给同一用户的虚拟机实例中没有容量,或者没有已分配给所述用户的虚拟机实例,那么工作器管理器140请求来自预热池130A的新的虚拟机实例。
另外,当请求包括更新已部署在虚拟计算系统110中的用户代码的请求时,工作器管理器140可识别托管旧版本的用户代码的虚拟机实例,并且开始利用与请求相关联的新版本的用户代码更新旧版本的用户代码的过程。在一些实施方案中,托管旧版本的用户代码的容器可继续执行旧版本的用户代码,直到更新版本的用户代码被加载到容器上。在一些实施方案中,工作器管理器140可致使容器响应于更新用户代码的请求而及时或立即停止旧版本的用户代码的执行。
工作器管理器140可将所识别的虚拟机实例分配给与所述请求相关联的用户。所分配的虚拟机实例现在是活性池140A而不是预热池130A的一部分,并且将由工作器管理器140管理。出于安全目的,虚拟机实例的关联可专为特定用户账户所独有。在一些实施方案中,为了防止与特定用户账户相关联的用户代码的执行影响与其他用户相关联的用户代码的执行,虚拟机实例可托管与特定用户相关联的用户代码,但无法托管与其他用户相关联的用户代码。可通过修改存储由工作器管理器140控制的虚拟机实例的信息的数据库的数据条目来进行虚拟机实例与特定用户账户的关联。
工作器管理器140可在被分配来执行/部署特定用户代码的虚拟机实例内创建和/或分配容器。虚拟机实例的资源的一部分被保留用于容器分配。工作器管理器140还可配置用于执行/部署用户代码的虚拟机容器。例如,用于运行用户代码的语言运行时间和库可基于与来自用户计算装置102的请求相关联的配置信息而加载到虚拟机容器中。工作器管理器140可在配置有与对应于与用户代码相关联的配置信息或资源需求的软件部件的容器上部署用户代码。部署的用户代码的实际执行可由来自用户装置或单独的计算系统的后续请求来开始。
在(5)处,工作器管理器140管理通过具有已被指定来执行用户代码的容器的虚拟机实例的用户代码执行。工作器管理器140也可与和虚拟计算系统110相关联的其他部件、系统和服务进行通信。例如,工作器管理器140可有助于虚拟机实例与存储服务(例如,图1的存储服务108)之间的通信。此外,如上所述,工作器管理器140可管理活性池140A中的虚拟机实例的能力和/或配置。一旦用户代码被加载到指定的虚拟机实例的容器中,所述容器就执行用户代码。在一些实施方案中,虚拟计算系统110适于在(例如,由前端120)接收用户代码之后不久开始执行用户代码。时间段可被确定为开始执行(例如,在与用户相关联的虚拟机实例上的容器中的)用户代码与接收执行(例如,由前端接收的)用户代码的请求之间的时间差。虚拟计算系统110适于在小于预定持续时间的时间段内开始执行用户代码。在一个实施方案中,预定持续时间是500ms。在另一个实施方案中,预定持续时间是300ms。在另一个实施方案中,预定持续时间是100ms。在另一个实施方案中,预定持续时间是50ms。在另一个实施方案中,预定持续时间是10ms。在另一个实施方案中,预定持续时间可为从10ms至500ms的范围中选择的任何值。在一些实施方案中,如果满足一个或多个条件,那么虚拟计算系统110适于在小于预定持续时间的时间段内开始执行用户代码。例如,一个或多个条件可包括以下中的任何一个:(1)在接收到请求时,用户代码被加载到活性池140中的容器上;(2)在接收到请求时,用户代码被存储在活性池140中的实例的代码缓存中;(3)在接收到请求时活性池140A包含分配给与所述请求相关联的用户的实例;或者(4)在接收到请求时预热池130A具有处理请求的能力。执行的结果可被输出到用户装置、与用户相关联的存储系统或者如下所述的单独的存储服务。例如,由容器执行的计算或处理的结果(例如,生成存储在存储服务内的图像的缩略图)可存储在用户可访问的存储服务108中。
继续参考图4,在(6)处,工作器管理器140与前端120通信以将用户代码执行的结果提供给用户计算装置102。在(7)处,虚拟计算系统110(例如,前端120或工作器管理器)与用户计算装置102和/或或辅助服务106传达用户代码执行请求的处理结果。在一些实施方案中,结果不被传达给用户或服务。这类结果可由虚拟计算系统110存储并使用,以用于附加处理。结果信息可用于基于所传达的处理结果来生成操作状态、资源使用和记帐信息的报告。
在(8)处,虚拟计算系统110与辅助服务106通信以提供与虚拟计算系统110相关联的监测和/或日志信息。在一些实施方案中,活动日志可由辅助服务106存储。活动日志可用于生成与用户的记帐通信。虚拟计算系统110可向监测/日志/记帐服务107(其可为单独的服务)传送监测信息。监测/日志信息可包括关于与用户代码执行相关联的活动的应用级信息和关于虚拟计算系统110中的虚拟机实例的状态和健康的系统级信息。监测信息和日志信息可用于开始过程以优化虚拟计算系统110中的实例/容器的库存,包括实例/容器的创建、获取、重定位、压缩和回收。可基于各种因素来进行实例/容器库存优化,包括操作成本、响应用户代码执行请求的延时、安全性、系统可扩展性和系统稳定性。
继续参考图4,虚拟计算系统110可创建并管理虚拟机实例,以相对于从用户计算装置102接收请求来独立地和异步地处理用户代码执行请求。例如,虚拟计算系统110的预热池管理器130可在接收执行用户代码的请求之前在预热池130A中准备预热的虚拟机实例。预热池130A中的预热的虚拟机实例未分配给特定用户并且包含用于支持用户代码的执行的软件部件。例如,包含在预热的虚拟机实例中的软件部件包括至少一个运行时间和一个或多个库。在一些实施方案中,至少一些预热的实例可进一步准备有预热的容器。这类预热的容器可被配置成包含其相关联的预热的实例的软件部件的副本的全部或子集。此外,虚拟计算系统110还可独立于来自用户计算装置102的特定请求而回收虚拟机实例(例如,从活性池140A中移除虚拟机实例并在预热池130中创建新的虚拟机实例)。
可独立于特定用户代码执行请求但基于与用户代码执行请求相关联的统计信息和历史信息来进行预热池130A中的虚拟机实例的准备和配置。例如,预热池管理器130可使用这种信息来优化在预热池130A中维护的虚拟机实例的各种配置类型和数量。例如,预热池管理器130可确定具有特定配置的实例在当日特定时间期间可能处于高需求中的可能性更大。因此,预热池管理器130可创建具有这种配置的更大数目的实例,并且将这些实例放置在预热池中,以预期接收执行与这类实例兼容的代码的用户请求。
虚拟计算系统110可独立于来自用户计算装置102的特定请求并且基于虚拟机实例和/或用户代码的激活历史来回收虚拟机实例。例如,工作器管理器140可监测激活历史并识别活性池内的虚拟机实例,所述虚拟机实例尚未用于执行用户代码超过预定时间段。随后,工作器管理器140使所识别的虚拟机实例到用户账户的分配无效。虚拟机实例的回收可基于与用户代码相关联的激活消息(有时称为触发器)之间的时间间隔。例如,被设计来生成新照片的缩略图的用户代码可能需要来自上传新照片的存储服务108的激活消息。当在超过预定时间段内未接收到这种激活消息时,为用户账户保留(与其相关联)的虚拟机实例可被解除分配(未关联)。在这种情况下,保持虚拟机实例中加载的用户代码可能浪费保留的资源。当这种时间段过去时,工作器管理器140可确定虚拟机实例未被利用,并且它可开始回收闲置虚拟机实例的过程。
在一些实施方案中,可分析和与虚拟机实例相关联的其他系统或部件的通信事件,以确定虚拟机实例的状态。在一些实施方案中,可分析用于存储用户代码执行的处理结果的通信事件的历史,以确定托管用户代码的虚拟机实例是否被主动利用。例如,当托管用于生成新照片的缩略图的用户代码的虚拟机实例不与存储所生成的缩略图的存储系统通信长于预定时间段时,工作器管理器140可确定虚拟机实例将不会被利用或者具有特定配置的太多实例被维护在活性池中。在一些实施方案中,工作器管理器140可开始容器的重定位或回收,以优化分配给特定用户的虚拟机实例的数量。
本领域中的技术人员和其他人将认识到,本公开中描述的所有功能可以在由所公开部件和移动通信装置的一个或多个物理处理器执行的软件中实施。所述软件可以永久地存储在任何类型的非易失性存储装置中。
除非另外特别说明,或者在所用上下文中理解,否则诸如“能够”、“可以”、“可能”或者“可”等等的条件语言通常意图表示,尽管其他实施方案不包括,但某些实施方案包括某些特征、元件和/或步骤。因此,这种条件性语言通常并不意图暗示特征、元件和/或步骤是一个或多个实施方案以任何方式所要求的,或一个或多个实施方案必定包括用于在有或没有用户输入或提示的情况下决定这些特征、元件和/或步骤被包括在任何特定实施方案中或将要在任何特定实施方案中进行的逻辑。
本文所描述和/或附图所描绘的流程图中的任何过程说明、元件或方框应理解成潜在地代表包括用于实施过程中的特定逻辑功能或步骤的一个或多个可执行指令的代码模块、代码片段或代码部分。替代的实施包括在本文所述实施方案的范围内,其中与本领域中的技术人员所理解的那样相同,元件或功能可以删除、不按照所示出或描述的顺序执行,包括基本上同时执行或者逆序执行,具体取决于所涉及的功能。将进一步认识到,上述数据和/或部件可假设存储在计算机可读介质上并使用与存储计算机可执行部件的计算机可读存储介质(诸如CD ROM、DVD ROM或网络接口)相关联的驱动机制加载到计算装置的存储器中。另外,所述部件和/或数据可包含在单一装置中或者以任何方式分布。因此,通用计算装置可以被配置成使用上述各种数据和/或部件的处理和/或执行来实现本公开的过程、算法和方法。
应强调,可以对上述实施方案作出许多改变和修改,这些改变和修改的要素应被理解为包含在其他可接受的实例当中。在本文中,所有这类修改和变化意图被包括在本公开的范围内,并且受所附权利要求书保护。
本公开的实施方案可鉴于以下条款来描述:
1.一种用于处理在一个或多个虚拟机实例上执行用户代码的请求的计算机实现的方法,所述方法包括:
当由被配置有特定计算机可执行指令的一个或多个计算装置实现时,
提供多个预热的虚拟机实例,所述预热的虚拟机实例中的每一个都未分配给特定用户并且包含与编程语言相关联的软件部件;
在提供所述多个预热的未分配虚拟机实例之后,接收执行用户代码的请求,所述请求包括与执行所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;
基于所述请求的所述配置信息来从所述多个预热的虚拟机实例中识别虚拟机实例,其中所述识别的虚拟机实例包含适于执行所述用户代码的特定软件部件;
将所述识别的虚拟机实例与和所述请求相关联的用户账户相关联;
在所述相关联的虚拟机实例内创建用于执行所述用户代码的容器;
将所述特定软件部件和所述用户代码加载到所述容器中;以及
开始由所述容器执行所述用户代码,其中所述开始在第二时间发生,以及
其中从所述第一时间到所述第二时间的时间段小于预定持续时间。
2.如条款1所述的方法,其中所述预定持续时间是100ms。
3.如条款1所述的方法,其中创建所述容器还包括:
接收执行所述用户代码的多个请求;
在所述识别的虚拟机实例内创建多个容器,其中所述多个容器中的每一个基于所述请求的所述配置信息来配置;以及
选择所述多个容器中的一个来执行所述用户代码。
4.如条款1所述的方法,其中创建所述容器还包括:
接收执行多个用户代码的多个请求;
在所述识别的虚拟机实例内创建多个容器,其中所述多个容器中的每一个基于所述请求的配置信息来配置;以及
选择所述多个容器中的一个来执行所述用户代码。
5.如条款1所述的方法,其中创建所述至少一个容器还包括:
使用所述配置信息确定资源需求;以及
创建具有至少所述资源需求的至少一个容器。
6.如条款1所述的方法,其中所述软件部件包括运行时间或一个或多个库中的至少一个。
7.如条款1所述的方法,其还包括:
监测所述识别的虚拟机实例中的所述用户代码的激活历史;以及
基于所述激活历史将所述识别的虚拟机实例与所述用户账户解除关联或者毁坏所述容器。
8.一种系统,其包括:
计算装置,其包括耦合到存储器的处理器,所述存储器包括特定指令,所述特定指令在执行时配置所述系统以:
提供多个虚拟机实例,其中所述多个虚拟机实例中的每一个包含与至少一种编程语言相关联的至少一个软件部件;
接收执行用户代码的请求,所述请求包括与所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;
基于所述请求的所述配置信息来从所述多个虚拟机实例识别虚拟机实例,其中所述识别的虚拟机实例包含对应于所述配置信息的特定软件部件;以及
基于所述配置信息在所述识别的虚拟机实例内的容器上执行所述用户代码,其中所述用户代码在第二时间被执行,以及
其中从所述第一时间到所述第二时间的时间段小于预定持续时间。
9.如条款8所述的系统,其中所述预定持续时间是100ms。
10.如条款8所述的系统,其中所述特定指令还将所述系统配置来在接收执行所述用户代码的所述请求之前提供所述多个虚拟机实例。
11.如条款8所述的系统,其中所述软件部件包括运行时间或一个或多个库中的至少一个。
12.如条款8所述的系统,其中所述特定指令还将所述系统配置来:
监测所述识别的虚拟机实例中的所述用户代码的激活历史;以及
基于所述激活历史将所述识别的虚拟机实例与所述用户账户解除关联或者毁坏所述容器。
13.如条款8所述的系统,其中所述识别的虚拟机实例在接收所述请求之前包括所述容器。
14.如条款13所述的系统,其中所述容器在接收所述请求之前包括所述用户代码。
15.如条款13所述的系统,其中所述特定指令还将所述系统配置来基于与所述请求相关联的资源需求来选择所述容器。
16.如条款8所述的系统,其中所述特定指令还将所述系统配置来在接收到所述请求之后在所述虚拟机实例上创建所述容器。
17.一种存储计算机可执行指令的非暂时性计算机可读存储介质,所述计算机可执行指令在由计算机系统执行时将所述计算机系统配置来执行操作,所述操作包括:
提供多个虚拟机实例,其中所述多个虚拟机实例中的每一个包含与至少一种编程语言相关联的至少一个软件部件;
接收执行用户代码的请求,所述请求包括与所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;
基于所述请求的所述配置信息来从所述多个虚拟机实例识别虚拟机实例,其中所述识别的虚拟机实例包含对应于所述配置信息的特定软件部件;以及
基于所述配置信息在所述识别的虚拟机实例内的容器上执行所述用户代码,其中所述用户代码在第二时间被执行,以及
其中从所述第一时间到所述第二时间的时间段小于预定持续时间。
18.如条款17所述的非暂时性计算机可读存储介质,其中所述预定持续时间是100ms。
19.如条款17所述的非暂时性计算机可读存储介质,其中所述操作还包括在接收所述请求之前提供所述多个虚拟机实例。
20.如条款17所述的非暂时性计算机可读存储介质,其中所述软件部件包括运行时间或一个或多个库中的至少一个。
21.如条款17所述的非暂时性计算机可读存储介质,其中所述操作还包括:
监测所述识别的虚拟机实例中的所述用户代码的激活历史;以及
基于所述激活历史将所述识别的虚拟机实例与所述用户账户解除关联或者毁坏所述容器。
22.如条款17所述的非暂时性计算机可读存储介质,其中所述识别的虚拟机实例在接收所述请求之前包括所述容器。
23.如条款22所述的非暂时性计算机可读存储介质,其中所述容器在接收所述请求之前包括所述用户代码。
24.如条款22所述的非暂时性计算机可读存储介质,其中所述操作还包括基于与所述请求相关联的资源需求来选择所述容器。
25.如条款17所述的非暂时性计算机可读存储介质,其中所述操作还包括在接收到所述请求之后在所述虚拟机实例上创建所述容器。
26.一种用于管理虚拟机实例的计算机实现的方法,所述方法包括:
提供多个虚拟机实例,其中所述多个虚拟机实例中的每一个包含与至少一种编程语言相关联的至少一个软件部件;
接收执行用户代码的请求,所述请求包括与所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;
基于所述请求的所述配置信息来从所述多个虚拟机实例识别虚拟机实例,其中所述识别的虚拟机实例包含对应于所述配置信息的特定软件部件;
将所述识别的虚拟机实例与和所述用户代码相关联的用户账户相关联;以及
基于所述配置信息在所述识别的虚拟机实例内的容器上执行所述用户代码,其中所述用户代码在第二时间被执行,以及
其中从所述第一时间到所述第二时间的时间段小于预定持续时间。
27.如条款26所述的方法,其中所述预定持续时间是100ms。
28.如条款26所述的方法,其中所述方法还包括在接收所述请求之前提供所述多个预热的虚拟机实例。
29.如条款26所述的方法,其中所述软件部件包括运行时间或一个或多个库中的至少一个。
30.如条款26所述的方法,其还包括:
监测所述识别的虚拟机实例中的所述用户代码的激活历史;以及
基于所述激活历史将所述识别的虚拟机实例与所述用户账户解除关联或者毁坏所述容器。
31.如条款26所述的方法,其中所述识别的虚拟机实例在接收所述请求之前包括所述容器。
32.如条款31所述的方法,其中所述容器在接收所述请求之前包括所述用户代码。
33.如条款31所述的方法,其还包括基于与所述请求相关联的资源需求来选择所述容器。
34.如条款26所述的方法,其还包括在接收到所述请求之后在所述虚拟机实例上创建所述容器。
Claims (34)
1.一种用于处理在一个或多个虚拟机实例上执行用户代码的请求的计算机实现的方法,所述方法包括:
当由被配置有特定计算机可执行指令的一个或多个计算装置实现时,
提供多个预热的虚拟机实例,所述预热的虚拟机实例中的每一个都未分配给特定用户并且包含与编程语言相关联的软件部件;
在提供所述多个预热的未分配虚拟机实例之后,接收执行用户代码的请求,所述请求包括与执行所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;
基于所述请求的所述配置信息来从所述多个预热的虚拟机实例中识别虚拟机实例,其中所述识别的虚拟机实例包含适于执行所述用户代码的特定软件部件;
将所述识别的虚拟机实例与和所述请求相关联的用户账户相关联;
在所述相关联的虚拟机实例内创建用于执行所述用户代码的容器;
将所述特定软件部件和所述用户代码加载到所述容器中;以及
开始由所述容器执行所述用户代码,其中所述开始在第二时间发生,以及
其中从所述第一时间到所述第二时间的时间段小于预定持续时间。
2.如权利要求1所述的方法,其中所述预定持续时间是100ms。
3.如权利要求1所述的方法,其中创建所述容器还包括:
接收执行所述用户代码的多个请求;
在所述识别的虚拟机实例内创建多个容器,其中所述多个容器中的每一个基于一个所述请求的所述配置信息来配置;以及
选择所述多个容器中的一个来执行所述用户代码。
4.如权利要求1所述的方法,其中创建所述容器还包括:
接收执行多个用户代码的多个请求;
在所述识别的虚拟机实例内创建多个容器,其中所述多个容器中的每一个基于多个所述请求的配置信息来配置;以及
选择所述多个容器中的一个来执行所述用户代码。
5.如权利要求1所述的方法,其中创建所述至少一个容器还包括:
使用所述配置信息确定资源需求;以及
创建具有至少所述资源需求的至少一个容器。
6.如权利要求1所述的方法,其中所述软件部件包括运行时间或一个或多个库中的至少一个。
7.如权利要求1所述的方法,其还包括:
监测所述识别的虚拟机实例中的所述用户代码的激活历史;以及
基于所述激活历史将所述识别的虚拟机实例与所述用户账户解除关联或者毁坏所述容器。
8.一种系统,其包括:
计算装置,其包括耦合到存储器的处理器,所述存储器包括特定指令,所述特定指令在执行时配置所述系统以:
提供多个预热的虚拟机实例,所述预热的虚拟机实例中的每一个都未分配给特定用户并且包含与编程语言相关联的软件部件;
在提供所述多个预热的未分配虚拟机实例之后,接收执行用户代码的请求,所述请求包括与执行所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;
基于所述请求的所述配置信息来从所述多个预热的虚拟机实例识别虚拟机实例,其中所述识别的虚拟机实例包含适于执行所述用户代码的特定软件部件;
将所述识别的虚拟机实例与和所述请求相关联的用户账户相关联;
在所述相关联的虚拟机实例内创建用于执行所述用户代码的容器;
将所述特定软件部件和所述用户代码加载到所述容器中;以及
开始由所述容器执行所述用户代码,其中所述开始在第二时间发生,以及
其中从所述第一时间到所述第二时间的时间段小于预定持续时间。
9.如权利要求8所述的系统,其中所述预定持续时间是100ms。
10.如权利要求8所述的系统,其中所述特定指令还将所述系统配置来在接收执行所述用户代码的所述请求之前提供所述多个虚拟机实例。
11.如权利要求8所述的系统,其中所述软件部件包括运行时间或一个或多个库中的至少一个。
12.如权利要求8所述的系统,其中所述特定指令还将所述系统配置来:
监测所述识别的虚拟机实例中的所述用户代码的激活历史;以及
基于所述激活历史将所述识别的虚拟机实例与所述用户账户解除关联或者毁坏所述容器。
13.如权利要求8所述的系统,其中所述识别的虚拟机实例在接收所述请求之前包括所述容器。
14.如权利要求13所述的系统,其中所述容器在接收所述请求之前包括所述用户代码。
15.如权利要求13所述的系统,其中所述特定指令还将所述系统配置来基于与所述请求相关联的资源需求来选择所述容器。
16.如权利要求8所述的系统,其中所述特定指令还将所述系统配置来在接收到所述请求之后在所述虚拟机实例上创建所述容器。
17.一种存储计算机可执行指令的非暂时性计算机可读存储介质,所述计算机可执行指令在由计算机系统执行时将所述计算机系统配置来:
提供多个预热的虚拟机实例,所述预热的虚拟机实例中的每一个都未分配给特定用户并且包含与编程语言相关联的软件部件;
在提供所述多个预热的未分配虚拟机实例之后,接收执行用户代码的请求,所述请求包括与执行所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;
基于所述请求的所述配置信息来从所述多个预热的虚拟机实例识别虚拟机实例,其中所述识别的虚拟机实例包含适于执行所述用户代码的特定软件部件;
将所述识别的虚拟机实例与和所述请求相关联的用户账户相关联;
在所述相关联的虚拟机实例内创建用于执行所述用户代码的容器;
将所述特定软件部件和所述用户代码加载到所述容器中;以及
开始由所述容器执行所述用户代码,其中所述开始在第二时间发生,以及
其中从所述第一时间到所述第二时间的时间段小于预定持续时间。
18.如权利要求17所述的非暂时性计算机可读存储介质,其中所述预定持续时间是100ms。
19.如权利要求17所述的非暂时性计算机可读存储介质,其中所述指令还将所述计算机系统配置来在接收所述请求之前提供所述多个虚拟机实例。
20.如权利要求17所述的非暂时性计算机可读存储介质,其中所述软件部件包括运行时间或一个或多个库中的至少一个。
21.如权利要求17所述的非暂时性计算机可读存储介质,其中所述指令还将所述计算机系统配置来:
监测所述识别的虚拟机实例中的所述用户代码的激活历史;以及
基于所述激活历史将所述识别的虚拟机实例与所述用户账户解除关联或者毁坏所述容器。
22.如权利要求17所述的非暂时性计算机可读存储介质,其中所述识别的虚拟机实例在接收所述请求之前包括所述容器。
23.如权利要求22所述的非暂时性计算机可读存储介质,其中所述容器在接收所述请求之前包括所述用户代码。
24.如权利要求22所述的非暂时性计算机可读存储介质,其中所述指令还将所述计算机系统配置来基于与所述请求相关联的资源需求来选择所述容器。
25.如权利要求17所述的非暂时性计算机可读存储介质,其中所述指令还将所述计算机系统配置来在接收到所述请求之后在所述虚拟机实例上创建所述容器。
26.一种用于管理虚拟机实例的计算机实现的方法,所述方法包括:
提供多个虚拟机实例,其中所述多个虚拟机实例中的每一个包含与至少一种编程语言相关联的至少一个软件部件;
接收执行用户代码的请求,所述请求包括与所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;
基于所述请求的所述配置信息来从所述多个虚拟机实例识别虚拟机实例,其中所述识别的虚拟机实例包含对应于所述配置信息的特定软件部件;
在所述识别的虚拟机实例内识别其上加载有所述用户代码的第一副本的容器;
基于所述配置信息使加载于所述容器上的所述用户代码的所述第一副本被执行,其中所述用户代码的所述第一副本在所述第一时间之后在预定持续时间内开始被执行;
监测所述用户代码的激活历史,其中所述激活历史包括关于在所述识别的虚拟机实例中执行所述用户代码的信息;以及
基于所述激活历史将所述识别的虚拟机实例与所述用户账户解除关联或者毁坏所述容器。
27.如权利要求26所述的方法,其中所述预定持续时间是100ms。
28.如权利要求26所述的方法,其中所述方法还包括在接收所述请求之前提供所述多个预热的虚拟机实例。
29.如权利要求26所述的方法,其中所述软件部件包括运行时间或一个或多个库中的至少一个。
30.如权利要求26所述的方法,其还包括:
基于所述激活历史确定所述识别的虚拟机实例在大于阈值时间段的时间段内尚未用于执行所述用户代码;以及
将所述识别的虚拟机实例与所述用户账户解除关联。
31.如权利要求26所述的方法,其中所述识别的虚拟机实例在接收所述请求之前包括所述容器。
32.如权利要求31所述的方法,其中所述容器在接收所述请求之前包括所述用户代码。
33.如权利要求31所述的方法,其还包括基于与所述请求相关联的资源需求来选择所述容器。
34.如权利要求26所述的方法,其还包括在接收到所述请求之后在所述虚拟机实例上创建所述容器。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/502,992 | 2014-09-30 | ||
US14/502,992 US9600312B2 (en) | 2014-09-30 | 2014-09-30 | Threading as a service |
CN201580053106.0A CN107111507A (zh) | 2014-09-30 | 2015-09-29 | 线程化作为服务 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580053106.0A Division CN107111507A (zh) | 2014-09-30 | 2015-09-29 | 线程化作为服务 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112860382A true CN112860382A (zh) | 2021-05-28 |
Family
ID=55584499
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110268031.5A Pending CN112860382A (zh) | 2014-09-30 | 2015-09-29 | 线程化作为服务 |
CN201580053106.0A Pending CN107111507A (zh) | 2014-09-30 | 2015-09-29 | 线程化作为服务 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580053106.0A Pending CN107111507A (zh) | 2014-09-30 | 2015-09-29 | 线程化作为服务 |
Country Status (5)
Country | Link |
---|---|
US (4) | US9600312B2 (zh) |
EP (2) | EP4002113A1 (zh) |
CN (2) | CN112860382A (zh) |
CA (1) | CA2962634C (zh) |
WO (1) | WO2016053950A1 (zh) |
Families Citing this family (115)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9323556B2 (en) | 2014-09-30 | 2016-04-26 | Amazon Technologies, Inc. | Programmatic event detection and message generation for requests to execute program code |
US9715402B2 (en) | 2014-09-30 | 2017-07-25 | Amazon Technologies, Inc. | Dynamic code deployment and versioning |
US9678773B1 (en) | 2014-09-30 | 2017-06-13 | Amazon Technologies, Inc. | Low latency computational capacity provisioning |
US9830193B1 (en) | 2014-09-30 | 2017-11-28 | Amazon Technologies, Inc. | Automatic management of low latency computational capacity |
US10048974B1 (en) | 2014-09-30 | 2018-08-14 | Amazon Technologies, Inc. | Message-based computation request scheduling |
US9146764B1 (en) | 2014-09-30 | 2015-09-29 | Amazon Technologies, Inc. | Processing event messages for user requests to execute program code |
US9600312B2 (en) | 2014-09-30 | 2017-03-21 | Amazon Technologies, Inc. | Threading as a service |
US10516733B2 (en) | 2014-11-25 | 2019-12-24 | Auth0, Inc. | Multi-tenancy via code encapsulated in server requests |
US9413626B2 (en) | 2014-12-05 | 2016-08-09 | Amazon Technologies, Inc. | Automatic management of resource sizing |
US9471775B1 (en) | 2015-02-04 | 2016-10-18 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9727725B2 (en) | 2015-02-04 | 2017-08-08 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9588790B1 (en) | 2015-02-04 | 2017-03-07 | Amazon Technologies, Inc. | Stateful virtual compute system |
US9733967B2 (en) | 2015-02-04 | 2017-08-15 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9930103B2 (en) | 2015-04-08 | 2018-03-27 | Amazon Technologies, Inc. | Endpoint management system providing an application programming interface proxy service |
US9785476B2 (en) | 2015-04-08 | 2017-10-10 | Amazon Technologies, Inc. | Endpoint management system and virtual compute system |
EP3304303B1 (en) * | 2015-06-03 | 2021-06-09 | Telefonaktiebolaget LM Ericsson (PUBL) | Allocating or announcing availability of a software container |
US9781124B2 (en) * | 2015-06-11 | 2017-10-03 | International Business Machines Corporation | Container-based system administration |
US10579403B2 (en) * | 2015-06-29 | 2020-03-03 | Vmware, Inc. | Policy based provisioning of containers |
US9524183B1 (en) | 2015-07-22 | 2016-12-20 | Bluedata Software, Inc. | Employing application containers in a large scale processing environment |
US9928108B1 (en) | 2015-09-29 | 2018-03-27 | Amazon Technologies, Inc. | Metaevent handling for on-demand code execution environments |
US10042660B2 (en) | 2015-09-30 | 2018-08-07 | Amazon Technologies, Inc. | Management of periodic requests for compute capacity |
US9934073B2 (en) * | 2015-10-23 | 2018-04-03 | Futurewei Technologies, Inc. | Extension of resource constraints for service-defined containers |
US10013267B1 (en) | 2015-12-16 | 2018-07-03 | Amazon Technologies, Inc. | Pre-triggers for code execution environments |
US9830175B1 (en) | 2015-12-16 | 2017-11-28 | Amazon Technologies, Inc. | Predictive management of on-demand code execution |
US10754701B1 (en) | 2015-12-16 | 2020-08-25 | Amazon Technologies, Inc. | Executing user-defined code in response to determining that resources expected to be utilized comply with resource restrictions |
US9811363B1 (en) | 2015-12-16 | 2017-11-07 | Amazon Technologies, Inc. | Predictive management of on-demand code execution |
US9830449B1 (en) | 2015-12-16 | 2017-11-28 | Amazon Technologies, Inc. | Execution locations for request-driven code |
US9811434B1 (en) | 2015-12-16 | 2017-11-07 | Amazon Technologies, Inc. | Predictive management of on-demand code execution |
US10067801B1 (en) | 2015-12-21 | 2018-09-04 | Amazon Technologies, Inc. | Acquisition and maintenance of compute capacity |
US10002026B1 (en) | 2015-12-21 | 2018-06-19 | Amazon Technologies, Inc. | Acquisition and maintenance of dedicated, reserved, and variable compute capacity |
US9910713B2 (en) | 2015-12-21 | 2018-03-06 | Amazon Technologies, Inc. | Code execution request routing |
JP2017167763A (ja) * | 2016-03-15 | 2017-09-21 | 富士通株式会社 | 情報処理装置、試験実行方法および試験実行プログラム |
US11132213B1 (en) | 2016-03-30 | 2021-09-28 | Amazon Technologies, Inc. | Dependency-based process of pre-existing data sets at an on demand code execution environment |
US10891145B2 (en) | 2016-03-30 | 2021-01-12 | Amazon Technologies, Inc. | Processing pre-existing data sets at an on demand code execution environment |
US10162672B2 (en) | 2016-03-30 | 2018-12-25 | Amazon Technologies, Inc. | Generating data streams from pre-existing data sets |
US10282229B2 (en) | 2016-06-28 | 2019-05-07 | Amazon Technologies, Inc. | Asynchronous task management in an on-demand network code execution environment |
US9952896B2 (en) | 2016-06-28 | 2018-04-24 | Amazon Technologies, Inc. | Asynchronous task management in an on-demand network code execution environment |
US10102040B2 (en) * | 2016-06-29 | 2018-10-16 | Amazon Technologies, Inc | Adjusting variable limit on concurrent code executions |
US9977691B2 (en) | 2016-06-29 | 2018-05-22 | Amazon Technologies, Inc. | Adjusting variable limit on concurrent code executions based on communication between frontends |
US10203990B2 (en) | 2016-06-30 | 2019-02-12 | Amazon Technologies, Inc. | On-demand network code execution with cross-account aliases |
US10277708B2 (en) | 2016-06-30 | 2019-04-30 | Amazon Technologies, Inc. | On-demand network code execution with cross-account aliases |
US10061613B1 (en) | 2016-09-23 | 2018-08-28 | Amazon Technologies, Inc. | Idempotent task execution in on-demand network code execution systems |
US10884787B1 (en) | 2016-09-23 | 2021-01-05 | Amazon Technologies, Inc. | Execution guarantees in an on-demand network code execution system |
US11119813B1 (en) | 2016-09-30 | 2021-09-14 | Amazon Technologies, Inc. | Mapreduce implementation using an on-demand network code execution system |
US10462030B2 (en) | 2016-10-07 | 2019-10-29 | Vmware, Inc. | Method and system for managing network nodes that implement a logical multi-node application |
US11824863B2 (en) * | 2016-11-03 | 2023-11-21 | Nicira, Inc. | Performing services on a host |
US10333985B2 (en) * | 2017-01-09 | 2019-06-25 | Microsoft Technology Licensing, Llc | Distribution and management of services in virtual environments |
US10203991B2 (en) * | 2017-01-19 | 2019-02-12 | International Business Machines Corporation | Dynamic resource allocation with forecasting in virtualized environments |
US11150936B2 (en) * | 2017-01-23 | 2021-10-19 | Hysolate Ltd. | Techniques for binding user identities to appropriate virtual machines with single sign-on |
US11153322B2 (en) | 2017-01-23 | 2021-10-19 | Hysolate Ltd. | Techniques for seamlessly launching applications in appropriate virtual machines |
US11010352B2 (en) | 2017-01-23 | 2021-05-18 | Hysolate Ltd. | Unified file system on air-gapped endpoints |
US10699003B2 (en) | 2017-01-23 | 2020-06-30 | Hysolate Ltd. | Virtual air-gapped endpoint, and methods thereof |
US10169023B2 (en) * | 2017-02-06 | 2019-01-01 | International Business Machines Corporation | Virtual container deployment |
US10827042B2 (en) | 2017-04-10 | 2020-11-03 | Vmware, Inc. | Traffic optimization for multi-node applications |
US10581675B1 (en) * | 2017-05-04 | 2020-03-03 | Amazon Technologies, Inc. | Metadata-based application and infrastructure deployment |
US10509682B2 (en) * | 2017-05-24 | 2019-12-17 | At&T Intellectual Property I, L.P. | De-allocation elasticity application system |
US9961675B1 (en) | 2017-05-25 | 2018-05-01 | At&T Intellectual Property I, L.P. | Multi-layer control plane automatic resource allocation system |
US10725810B2 (en) * | 2017-06-01 | 2020-07-28 | Vmware, Inc. | Migrating virtualized computing instances that implement a logical multi-node application |
US10547590B1 (en) * | 2017-06-23 | 2020-01-28 | Amazon Technologies, Inc. | Network processing using asynchronous functions |
US11977958B2 (en) * | 2017-11-22 | 2024-05-07 | Amazon Technologies, Inc. | Network-accessible machine learning model training and hosting system |
US11170309B1 (en) | 2017-11-22 | 2021-11-09 | Amazon Technologies, Inc. | System for routing machine learning model inferences |
US10303492B1 (en) | 2017-12-13 | 2019-05-28 | Amazon Technologies, Inc. | Managing custom runtimes in an on-demand code execution system |
US10564946B1 (en) | 2017-12-13 | 2020-02-18 | Amazon Technologies, Inc. | Dependency handling in an on-demand network code execution system |
CN108089912A (zh) * | 2017-12-19 | 2018-05-29 | 深信服科技股份有限公司 | 一种虚拟机与容器超融合系统构建方法及装置 |
US10831898B1 (en) | 2018-02-05 | 2020-11-10 | Amazon Technologies, Inc. | Detecting privilege escalations in code including cross-service calls |
US10353678B1 (en) | 2018-02-05 | 2019-07-16 | Amazon Technologies, Inc. | Detecting code characteristic alterations due to cross-service calls |
US10733085B1 (en) | 2018-02-05 | 2020-08-04 | Amazon Technologies, Inc. | Detecting impedance mismatches due to cross-service calls |
US10572375B1 (en) | 2018-02-05 | 2020-02-25 | Amazon Technologies, Inc. | Detecting parameter validity in code including cross-service calls |
US10725752B1 (en) | 2018-02-13 | 2020-07-28 | Amazon Technologies, Inc. | Dependency handling in an on-demand network code execution system |
US10776091B1 (en) | 2018-02-26 | 2020-09-15 | Amazon Technologies, Inc. | Logging endpoint in an on-demand code execution system |
WO2019214813A1 (en) * | 2018-05-08 | 2019-11-14 | Nokia Solutions And Networks Oy | Method, computer program and circuitry for managing resources within a radio access network |
US10853115B2 (en) | 2018-06-25 | 2020-12-01 | Amazon Technologies, Inc. | Execution of auxiliary functions in an on-demand network code execution system |
US10649749B1 (en) | 2018-06-26 | 2020-05-12 | Amazon Technologies, Inc. | Cross-environment application of tracing information for improved code execution |
US11146569B1 (en) | 2018-06-28 | 2021-10-12 | Amazon Technologies, Inc. | Escalation-resistant secure network services using request-scoped authentication information |
US10915343B2 (en) * | 2018-06-29 | 2021-02-09 | Atlassian Pty Ltd. | Server computer execution of client executable code |
US10949237B2 (en) | 2018-06-29 | 2021-03-16 | Amazon Technologies, Inc. | Operating system customization in an on-demand network code execution system |
US11126461B2 (en) | 2018-07-12 | 2021-09-21 | Vmware, Inc. | Techniques for container scheduling in a virtual environment |
US11099870B1 (en) * | 2018-07-25 | 2021-08-24 | Amazon Technologies, Inc. | Reducing execution times in an on-demand network code execution system using saved machine states |
US11099917B2 (en) | 2018-09-27 | 2021-08-24 | Amazon Technologies, Inc. | Efficient state maintenance for execution environments in an on-demand code execution system |
US11243953B2 (en) | 2018-09-27 | 2022-02-08 | Amazon Technologies, Inc. | Mapreduce implementation in an on-demand network code execution system and stream data processing system |
US11075985B2 (en) | 2018-11-09 | 2021-07-27 | Cisco Technology, Inc. | Early action on deploying and executing functions in a serverless environment |
US11943093B1 (en) | 2018-11-20 | 2024-03-26 | Amazon Technologies, Inc. | Network connection recovery after virtual machine transition in an on-demand network code execution system |
US11175960B2 (en) * | 2018-12-05 | 2021-11-16 | Electronics And Telecommunications Research Institute | Worker-scheduling method in cloud-computing system and apparatus for the same |
US10884812B2 (en) | 2018-12-13 | 2021-01-05 | Amazon Technologies, Inc. | Performance-based hardware emulation in an on-demand network code execution system |
US11010188B1 (en) | 2019-02-05 | 2021-05-18 | Amazon Technologies, Inc. | Simulated data object storage using on-demand computation of data objects |
US11861386B1 (en) | 2019-03-22 | 2024-01-02 | Amazon Technologies, Inc. | Application gateways in an on-demand network code execution system |
US11119809B1 (en) | 2019-06-20 | 2021-09-14 | Amazon Technologies, Inc. | Virtualization-based transaction handling in an on-demand network code execution system |
US11190609B2 (en) | 2019-06-28 | 2021-11-30 | Amazon Technologies, Inc. | Connection pooling for scalable network services |
US11115404B2 (en) | 2019-06-28 | 2021-09-07 | Amazon Technologies, Inc. | Facilitating service connections in serverless code executions |
US11159528B2 (en) | 2019-06-28 | 2021-10-26 | Amazon Technologies, Inc. | Authentication to network-services using hosted authentication information |
JP7402643B2 (ja) * | 2019-09-18 | 2023-12-21 | キヤノン株式会社 | 情報処理装置とその制御方法、及びプログラム |
US11360948B2 (en) | 2019-09-27 | 2022-06-14 | Amazon Technologies, Inc. | Inserting owner-specified data processing pipelines into input/output path of object storage service |
US11550944B2 (en) | 2019-09-27 | 2023-01-10 | Amazon Technologies, Inc. | Code execution environment customization system for object storage service |
US11023416B2 (en) | 2019-09-27 | 2021-06-01 | Amazon Technologies, Inc. | Data access control system for object storage service based on owner-defined code |
US10996961B2 (en) | 2019-09-27 | 2021-05-04 | Amazon Technologies, Inc. | On-demand indexing of data in input path of object storage service |
US11416628B2 (en) | 2019-09-27 | 2022-08-16 | Amazon Technologies, Inc. | User-specific data manipulation system for object storage service based on user-submitted code |
US11263220B2 (en) | 2019-09-27 | 2022-03-01 | Amazon Technologies, Inc. | On-demand execution of object transformation code in output path of object storage service |
US11250007B1 (en) | 2019-09-27 | 2022-02-15 | Amazon Technologies, Inc. | On-demand execution of object combination code in output path of object storage service |
US11656892B1 (en) | 2019-09-27 | 2023-05-23 | Amazon Technologies, Inc. | Sequential execution of user-submitted code and native functions |
US11386230B2 (en) | 2019-09-27 | 2022-07-12 | Amazon Technologies, Inc. | On-demand code obfuscation of data in input path of object storage service |
US11394761B1 (en) | 2019-09-27 | 2022-07-19 | Amazon Technologies, Inc. | Execution of user-submitted code on a stream of data |
US11055112B2 (en) | 2019-09-27 | 2021-07-06 | Amazon Technologies, Inc. | Inserting executions of owner-specified code into input/output path of object storage service |
US11106477B2 (en) | 2019-09-27 | 2021-08-31 | Amazon Technologies, Inc. | Execution of owner-specified code during input/output path to object storage service |
US10908927B1 (en) | 2019-09-27 | 2021-02-02 | Amazon Technologies, Inc. | On-demand execution of object filter code in output path of object storage service |
US11023311B2 (en) | 2019-09-27 | 2021-06-01 | Amazon Technologies, Inc. | On-demand code execution in input path of data uploaded to storage service in multiple data portions |
US10942795B1 (en) | 2019-11-27 | 2021-03-09 | Amazon Technologies, Inc. | Serverless call distribution to utilize reserved capacity without inhibiting scaling |
US11119826B2 (en) | 2019-11-27 | 2021-09-14 | Amazon Technologies, Inc. | Serverless call distribution to implement spillover while avoiding cold starts |
US11714682B1 (en) | 2020-03-03 | 2023-08-01 | Amazon Technologies, Inc. | Reclaiming computing resources in an on-demand code execution system |
US11188391B1 (en) | 2020-03-11 | 2021-11-30 | Amazon Technologies, Inc. | Allocating resources to on-demand code executions under scarcity conditions |
US11775640B1 (en) | 2020-03-30 | 2023-10-03 | Amazon Technologies, Inc. | Resource utilization-based malicious task detection in an on-demand code execution system |
US11593270B1 (en) | 2020-11-25 | 2023-02-28 | Amazon Technologies, Inc. | Fast distributed caching using erasure coded object parts |
US11550713B1 (en) | 2020-11-25 | 2023-01-10 | Amazon Technologies, Inc. | Garbage collection in distributed systems using life cycled storage roots |
CN112529711B (zh) * | 2021-02-07 | 2021-05-14 | 腾讯科技(深圳)有限公司 | 基于区块链虚拟机复用的交易处理方法及装置 |
US11388210B1 (en) | 2021-06-30 | 2022-07-12 | Amazon Technologies, Inc. | Streaming analytics using a serverless compute system |
CN114138357A (zh) * | 2021-10-29 | 2022-03-04 | 北京达佳互联信息技术有限公司 | 一种请求处理方法、装置、电子设备、存储介质及产品 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1818873A (zh) * | 2005-02-11 | 2006-08-16 | 戴尔产品有限公司 | 用于虚拟机中的集中式软件管理的系统和方法 |
CN101512488A (zh) * | 2006-08-07 | 2009-08-19 | Bea系统公司 | 在虚拟机环境中提供硬件虚拟化的系统和方法 |
US20110134761A1 (en) * | 2009-12-03 | 2011-06-09 | International Business Machines Corporation | Dynamically provisioning virtual machines |
US8065676B1 (en) * | 2007-04-24 | 2011-11-22 | Hewlett-Packard Development Company, L.P. | Automated provisioning of virtual machines for a virtual machine buffer pool and production pool |
CN103098027A (zh) * | 2010-09-21 | 2013-05-08 | 亚马逊技术有限公司 | 用于动态管理计算容量请求的方法和系统 |
CN104169881A (zh) * | 2012-01-18 | 2014-11-26 | Dh2I公司 | 用于服务器集群应用程序虚拟化的系统和方法 |
Family Cites Families (762)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4949254A (en) | 1988-09-29 | 1990-08-14 | Ibm Corp. | Method to manage concurrent execution of a distributed application program by a host computer and a large plurality of intelligent work stations on an SNA network |
US5283888A (en) | 1991-08-27 | 1994-02-01 | International Business Machines Corporation | Voice processing interface unit employing virtual screen communications for accessing a plurality of primed applications |
DE19500957A1 (de) | 1994-07-19 | 1996-01-25 | Bosch Gmbh Robert | Verfahren zur Steuerung von technischen Vorgängen oder Prozessen |
GB2302966A (en) | 1995-06-30 | 1997-02-05 | Ibm | Transaction processing with a reduced-kernel operating system |
JPH10255112A (ja) | 1997-03-12 | 1998-09-25 | Oki Electric Ind Co Ltd | 自動取引装置の監視方法と監視システム |
US5970488A (en) | 1997-05-05 | 1999-10-19 | Northrop Grumman Corporation | Real-time distributed database system and method |
JPH1153326A (ja) | 1997-07-30 | 1999-02-26 | Internatl Business Mach Corp <Ibm> | 分散処理システム、クライアントノード、サーバノードおよび分散処理方法 |
US6237005B1 (en) | 1998-06-29 | 2001-05-22 | Compaq Computer Corporation | Web server mechanism for processing multiple transactions in an interpreted language execution environment |
US6463509B1 (en) | 1999-01-26 | 2002-10-08 | Motive Power, Inc. | Preloading data in a cache memory according to user-specified preload criteria |
US6501736B1 (en) | 1999-03-19 | 2002-12-31 | Lucent Technologies Inc. | System for increasing the call capacity of a wireless communication system |
JP2000305796A (ja) | 1999-04-22 | 2000-11-02 | Hitachi Ltd | 電子計算機間のジョブ転送方法およびジョブ転送システム |
US6523035B1 (en) | 1999-05-20 | 2003-02-18 | Bmc Software, Inc. | System and method for integrating a plurality of disparate database utilities into a single graphical user interface |
US7472349B1 (en) | 1999-06-01 | 2008-12-30 | Oracle International Corporation | Dynamic services infrastructure for allowing programmatic access to internet and other resources |
US6708276B1 (en) | 1999-08-03 | 2004-03-16 | International Business Machines Corporation | Architecture for denied permissions in Java |
US20050027611A1 (en) | 1999-08-26 | 2005-02-03 | Wharton Brian K. | Electronic commerce systems and methods providing multiple-vendor searches |
US6854114B1 (en) | 1999-10-21 | 2005-02-08 | Oracle International Corp. | Using a virtual machine instance as the basic unit of user execution in a server environment |
FR2801118B1 (fr) | 1999-11-17 | 2001-12-21 | Bull Cp8 | Procede de chargement d'applications dans un systeme embarque multi-application, systeme embarque correspondant, et procede d'execution d'une application du systeme embarque |
DE10048942B4 (de) | 1999-12-01 | 2008-07-03 | International Business Machines Corp. | Verfahren und System zur Wartung von Software über ein Netz |
KR100357850B1 (ko) | 2000-03-29 | 2002-10-25 | 삼성전자 주식회사 | 코버플락시모듈을 이용한 다양한 프로토콜 공통 서비스를위한 분산객체 지향 통신시스템 및 그 방법 |
US6986133B2 (en) | 2000-04-14 | 2006-01-10 | Goahead Software Inc. | System and method for securely upgrading networked devices |
JP2001331333A (ja) | 2000-05-18 | 2001-11-30 | Hitachi Ltd | 計算機システム及び計算機システムの制御方法 |
US20040098154A1 (en) * | 2000-10-04 | 2004-05-20 | Mccarthy Brendan | Method and apparatus for computer system engineering |
US8719326B2 (en) | 2003-08-18 | 2014-05-06 | S.F. Ip Properties 14 Llc | Adaptive data transformation engine |
JP2002287974A (ja) | 2001-03-26 | 2002-10-04 | Ricoh Co Ltd | アプリケーションプログラムの登録制御及び起動制御に係る方法及び該制御装置 |
US7009939B2 (en) | 2001-05-21 | 2006-03-07 | Lucent Technologies Inc. | Adaptive resource management in a communication system |
US6760908B2 (en) | 2001-07-16 | 2004-07-06 | Namodigit Corporation | Embedded software update system |
US20040205493A1 (en) | 2001-08-08 | 2004-10-14 | Simpson Shell S. | Web based imaging application that creates customized content based on user selections |
US7028030B2 (en) | 2001-08-30 | 2006-04-11 | Bea Systems, Inc. | Cluster caching with concurrency checking |
US7594182B2 (en) | 2001-10-12 | 2009-09-22 | National Insturments Corporation | Dynamic and user-defined events for a graphical program |
US7269833B2 (en) | 2001-12-12 | 2007-09-11 | Sun Microsystems, Inc. | Scriptable plug-in application programming interface |
US7174566B2 (en) | 2002-02-01 | 2007-02-06 | Intel Corporation | Integrated network intrusion detection |
US7093004B2 (en) | 2002-02-04 | 2006-08-15 | Datasynapse, Inc. | Using execution statistics to select tasks for redundant assignment in a distributed computing platform |
US7577722B1 (en) | 2002-04-05 | 2009-08-18 | Vmware, Inc. | Provisioning of computer systems using virtual machines |
US8527408B2 (en) | 2002-05-06 | 2013-09-03 | Bottom Line Technologies (De), Inc. | Integrated payment system |
US20030229794A1 (en) * | 2002-06-07 | 2003-12-11 | Sutton James A. | System and method for protection against untrusted system management code by redirecting a system management interrupt and creating a virtual machine container |
US7308463B2 (en) | 2002-06-26 | 2007-12-11 | Hewlett-Packard Development Company, L.P. | Providing requested file mapping information for a file on a storage device |
US7228354B2 (en) | 2002-06-28 | 2007-06-05 | International Business Machines Corporation | Method for improving performance in a computer storage system by regulating resource requests from clients |
US7107585B2 (en) | 2002-07-29 | 2006-09-12 | Arm Limited | Compilation of application code in a data processing apparatus |
US7747989B1 (en) | 2002-08-12 | 2010-06-29 | Mips Technologies, Inc. | Virtual machine coprocessor facilitating dynamic compilation |
US7386855B2 (en) | 2002-08-12 | 2008-06-10 | Ntt Docomo, Inc. | Application mobility service |
US8108656B2 (en) | 2002-08-29 | 2012-01-31 | Qst Holdings, Llc | Task definition for specifying resource requirements |
JP2004102597A (ja) | 2002-09-09 | 2004-04-02 | Fujitsu Ltd | コンパイル処理プログラム、コンパイル処理方法、およびコンパイル処理プログラム記録媒体 |
WO2004068367A2 (en) | 2002-12-02 | 2004-08-12 | Sap Aktiengesellschaft | Session-return enabling stateful web applications |
US7031958B2 (en) | 2003-02-06 | 2006-04-18 | International Business Machines Corporation | Patterned based query optimization |
US7774191B2 (en) | 2003-04-09 | 2010-08-10 | Gary Charles Berkowitz | Virtual supercomputer |
US20050193113A1 (en) | 2003-04-14 | 2005-09-01 | Fujitsu Limited | Server allocation control method |
US7360215B2 (en) | 2003-05-15 | 2008-04-15 | Sap Ag | Application interface for analytical tasks |
US20040249947A1 (en) | 2003-05-22 | 2004-12-09 | Hewlett-Packard Development Company, L.P. | Concurrent cluster environment |
US7636917B2 (en) | 2003-06-30 | 2009-12-22 | Microsoft Corporation | Network load balancing with host status information |
US7340522B1 (en) | 2003-07-31 | 2008-03-04 | Hewlett-Packard Development Company, L.P. | Method and system for pinning a resource having an affinity to a user for resource allocation |
US7937493B2 (en) | 2003-08-14 | 2011-05-03 | Oracle International Corporation | Connection pool use of runtime load balancing service performance advisories |
US8776050B2 (en) | 2003-08-20 | 2014-07-08 | Oracle International Corporation | Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes |
US20050044301A1 (en) | 2003-08-20 | 2005-02-24 | Vasilevsky Alexander David | Method and apparatus for providing virtual computing services |
US7441244B2 (en) | 2003-12-10 | 2008-10-21 | International Business Machines Corporation | Workload scheduler with cumulative weighting indexes |
US7743029B2 (en) | 2003-12-30 | 2010-06-22 | Sap Ag | Log configuration and online deployment services |
US20050193283A1 (en) | 2003-12-30 | 2005-09-01 | Reinhardt Steven K. | Buffering unchecked stores for fault detection in redundant multithreading systems using speculative memory support |
JP2005198201A (ja) | 2004-01-09 | 2005-07-21 | Ntt Docomo Inc | ネットワークトポロジー構成方法及びノード |
US7665090B1 (en) | 2004-03-08 | 2010-02-16 | Swsoft Holdings, Ltd. | System, method, and computer program product for group scheduling of computer resources |
US7565661B2 (en) | 2004-05-10 | 2009-07-21 | Siew Yong Sim-Tang | Method and system for real-time event journaling to provide enterprise data services |
US7587721B2 (en) | 2004-05-20 | 2009-09-08 | Sap Ag | Sharing objects in runtime systems |
US20050268308A1 (en) | 2004-05-28 | 2005-12-01 | Nokia Corporation | System and method for implementing a general application program interface |
US7587755B2 (en) | 2004-07-02 | 2009-09-08 | Citrix Systems, Inc. | System and method for executing interactive applications with minimal privileges |
US7886293B2 (en) | 2004-07-07 | 2011-02-08 | Intel Corporation | Optimizing system behavior in a virtual machine environment |
US7359834B2 (en) | 2004-08-13 | 2008-04-15 | Sun Microsystems, Inc. | Monitoring system-calls to identify runaway processes within a computer system |
US20060080678A1 (en) | 2004-09-07 | 2006-04-13 | Bailey Mark W | Task distribution method for protecting servers and tasks in a distributed system |
US8146073B2 (en) | 2004-09-30 | 2012-03-27 | Microsoft Corporation | Updating software while it is running |
JP2006107599A (ja) | 2004-10-04 | 2006-04-20 | Sekisui Chem Co Ltd | 光ディスク |
US20060129684A1 (en) | 2004-11-10 | 2006-06-15 | Chutney Technologies, Inc. | Apparatus and method for distributing requests across a cluster of application servers |
JP4191672B2 (ja) | 2004-12-14 | 2008-12-03 | ザイオソフト株式会社 | ボリュームレンダリング等の画像処理システム |
US8321554B2 (en) | 2004-12-17 | 2012-11-27 | International Business Machines Corporation | System and program to automatically identify a server on which to deploy an application |
US7793290B2 (en) | 2004-12-20 | 2010-09-07 | Sap Ag | Grip application acceleration by executing grid application based on application usage history prior to user request for application execution |
FR2881854B1 (fr) | 2005-02-04 | 2008-01-11 | Radiotelephone Sfr | Procede de gestion securisee de l'execution d'une application |
CN100337218C (zh) | 2005-02-23 | 2007-09-12 | 北京邦诺存储科技有限公司 | 网络存储系统中的数据管理方法及其构建的网络存储系统 |
US7860013B2 (en) | 2005-03-09 | 2010-12-28 | Comcast Cable Holdings, Llc | Methods and systems for using in-stream data within an on demand content delivery path |
US8631130B2 (en) | 2005-03-16 | 2014-01-14 | Adaptive Computing Enterprises, Inc. | Reserving resources in an on-demand compute environment from a local compute environment |
US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
US7558719B1 (en) * | 2005-04-14 | 2009-07-07 | Xilinx, Inc. | System and method for runtime analysis of system models for variable fidelity performance analysis |
US20060242647A1 (en) | 2005-04-21 | 2006-10-26 | Kimbrel Tracy J | Dynamic application placement under service and memory constraints |
US7603712B2 (en) | 2005-04-21 | 2009-10-13 | Microsoft Corporation | Protecting a computer that provides a Web service from malware |
JP4515319B2 (ja) | 2005-04-27 | 2010-07-28 | 株式会社日立製作所 | コンピュータシステム |
JP4690767B2 (ja) | 2005-05-11 | 2011-06-01 | 株式会社日立製作所 | ネットワークシステム、サーバ装置および通信方法 |
US8555061B2 (en) | 2005-05-13 | 2013-10-08 | Microsoft Corporation | Transparent code |
US7707579B2 (en) | 2005-07-14 | 2010-04-27 | International Business Machines Corporation | Method and system for application profiling for purposes of defining resource requirements |
US8571913B2 (en) | 2005-08-04 | 2013-10-29 | Jeffrey K. Johnson | System and method for managing data within a calendaring framework |
US8407785B2 (en) | 2005-08-18 | 2013-03-26 | The Trustees Of Columbia University In The City Of New York | Systems, methods, and media protecting a digital data processing device from attack |
JP4580845B2 (ja) | 2005-08-24 | 2010-11-17 | パナソニック株式会社 | タスク実行装置 |
US7730464B2 (en) | 2005-09-14 | 2010-06-01 | Microsoft Corporation | Code compilation management service |
US8429630B2 (en) * | 2005-09-15 | 2013-04-23 | Ca, Inc. | Globally distributed utility computing cloud |
JP2007080161A (ja) | 2005-09-16 | 2007-03-29 | Nec Personal Products Co Ltd | データ配信システム、部分コンテンツ格納サーバ、応答高速化方法、及びプログラム |
US20070101325A1 (en) | 2005-10-19 | 2007-05-03 | Juraj Bystricky | System and method for utilizing a remote memory to perform an interface save/restore procedure |
JP4650203B2 (ja) | 2005-10-20 | 2011-03-16 | 株式会社日立製作所 | 情報システム及び管理計算機 |
US7933923B2 (en) | 2005-11-04 | 2011-04-26 | International Business Machines Corporation | Tracking and reconciling database commands |
US7756972B2 (en) | 2005-12-06 | 2010-07-13 | Cisco Technology, Inc. | System for power savings in server farms |
US8099726B2 (en) | 2005-12-07 | 2012-01-17 | Microsoft Corporation | Implementing strong atomicity in software transactional memory |
US7739239B1 (en) | 2005-12-29 | 2010-06-15 | Amazon Technologies, Inc. | Distributed storage system with support for distinct storage classes |
ES2444570T3 (es) | 2006-01-10 | 2014-02-25 | Sk Biopharmaceuticals Co., Ltd. | Método para preparar 3-hidroxitetrahidrofurano utilizando ciclodeshidratación |
US7725574B2 (en) | 2006-01-23 | 2010-05-25 | International Business Machines Corporation | Web browser-based programming language error determination and reporting |
US20070174429A1 (en) | 2006-01-24 | 2007-07-26 | Citrix Systems, Inc. | Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment |
US7818798B2 (en) | 2006-02-03 | 2010-10-19 | Microsoft Corporation | Software system with controlled access to objects |
US20070192082A1 (en) | 2006-02-13 | 2007-08-16 | Maria Gaos | System and method for generating and executing a platform emulation based on a selected application |
WO2007095642A2 (en) | 2006-02-16 | 2007-08-23 | The Regents Of The University Of California | Dynamic incremental compiler and method |
US20070220009A1 (en) | 2006-03-15 | 2007-09-20 | Morris Robert P | Methods, systems, and computer program products for controlling access to application data |
US8190682B2 (en) | 2006-03-31 | 2012-05-29 | Amazon Technologies, Inc. | Managing execution of programs by multiple computing systems |
US7801128B2 (en) * | 2006-03-31 | 2010-09-21 | Amazon Technologies, Inc. | Managing communications between computing nodes |
US7792944B2 (en) * | 2006-03-31 | 2010-09-07 | Amazon Technologies, Inc. | Executing programs based on user-specified constraints |
US7831464B1 (en) | 2006-04-06 | 2010-11-09 | ClearPoint Metrics, Inc. | Method and system for dynamically representing distributed information |
US8095931B1 (en) | 2006-04-27 | 2012-01-10 | Vmware, Inc. | Controlling memory conditions in a virtual machine |
US9754265B2 (en) | 2006-05-01 | 2017-09-05 | At&T Intellectual Property I, L.P. | Systems and methods to automatically activate distribution channels provided by business partners |
US8046765B2 (en) | 2006-07-25 | 2011-10-25 | Hewlett-Packard Development Company, L.P. | System and method for determining allocation of resource access demands to different classes of service based at least in part on permitted degraded performance |
US8209695B1 (en) | 2006-07-28 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Reserving resources in a resource-on-demand system for user desktop utility demand |
US8015294B2 (en) | 2006-08-22 | 2011-09-06 | Embarq Holdings Company, LP | Pin-hole firewall for communicating data packets on a packet network |
US7823186B2 (en) | 2006-08-24 | 2010-10-26 | Novell, Inc. | System and method for applying security policies on multiple assembly caches |
CA2557343C (en) | 2006-08-28 | 2015-09-22 | Ibm Canada Limited-Ibm Canada Limitee | Runtime code modification in a multi-threaded environment |
US7996855B2 (en) | 2006-09-15 | 2011-08-09 | Oracle International Corporation | Personal messaging application programming interface for integrating an application with groupware systems |
US20150052258A1 (en) | 2014-09-29 | 2015-02-19 | Weaved, Inc. | Direct map proxy system and protocol |
US8161475B2 (en) | 2006-09-29 | 2012-04-17 | Microsoft Corporation | Automatic load and balancing for virtual machines to meet resource requirements |
US8010990B2 (en) | 2006-10-26 | 2011-08-30 | Intel Corporation | Acceleration of packet flow classification in a virtualized system |
US8185893B2 (en) | 2006-10-27 | 2012-05-22 | Hewlett-Packard Development Company, L.P. | Starting up at least one virtual machine in a physical machine by a load balancer |
US8584109B2 (en) | 2006-10-27 | 2013-11-12 | Microsoft Corporation | Virtualization for diversified tamper resistance |
US7644204B2 (en) | 2006-10-31 | 2010-01-05 | Hewlett-Packard Development Company, L.P. | SCSI I/O coordinator |
US8315171B2 (en) | 2006-10-31 | 2012-11-20 | Oracle America, Inc. | Adaptive management of computing resources |
JP4308241B2 (ja) | 2006-11-10 | 2009-08-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ジョブ実行方法、ジョブ実行システム及びジョブ実行プログラム |
US8112747B2 (en) | 2006-11-27 | 2012-02-07 | Sap Ag | Integrated software support for a distributed business application with seamless backend communications |
CN101196974B (zh) | 2006-12-06 | 2011-08-24 | 国际商业机器公司 | 用于软件应用程序的自动配置的方法和系统 |
US8996864B2 (en) | 2006-12-22 | 2015-03-31 | Virtuallogix Sa | System for enabling multiple execution environments to share a device |
US8677353B2 (en) | 2007-01-11 | 2014-03-18 | Nec Corporation | Provisioning a standby virtual machine based on the prediction of a provisioning request being generated |
US8554981B2 (en) | 2007-02-02 | 2013-10-08 | Vmware, Inc. | High availability virtual machine cluster |
US8655623B2 (en) | 2007-02-13 | 2014-02-18 | International Business Machines Corporation | Diagnostic system and method |
US20080201455A1 (en) | 2007-02-15 | 2008-08-21 | Husain Syed M Amir | Moving Execution of a Virtual Machine Across Different Virtualization Platforms |
US8793676B2 (en) * | 2007-02-15 | 2014-07-29 | Microsoft Corporation | Version-resilient loader for custom code runtimes |
JP5018133B2 (ja) | 2007-02-27 | 2012-09-05 | 富士通株式会社 | ジョブ管理装置、クラスタシステム、およびジョブ管理プログラム |
US8065682B2 (en) | 2007-02-27 | 2011-11-22 | Microsoft Corporation | Enforcing system resource usage limits on query requests based on grouping query requests into workgroups and assigning workload groups to resource pools |
US8856782B2 (en) | 2007-03-01 | 2014-10-07 | George Mason Research Foundation, Inc. | On-demand disposable virtual work system |
US7996786B2 (en) | 2007-03-05 | 2011-08-09 | Microsoft Corporation | Dynamically rendering visualizations of data sets |
CN101267334B (zh) | 2007-03-13 | 2011-01-26 | 联想(北京)有限公司 | 一种动态分配设备的方法及装置 |
WO2008114454A1 (ja) | 2007-03-20 | 2008-09-25 | Fujitsu Limited | 更新システム、プログラム実行装置及びコンピュータプログラム |
US8667471B2 (en) | 2007-03-30 | 2014-03-04 | Sap Ag | Method and system for customizing profiling sessions |
US8522209B2 (en) | 2007-03-30 | 2013-08-27 | Sap Ag | Method and system for integrating profiling and debugging |
US8219987B1 (en) * | 2007-08-24 | 2012-07-10 | Vmware, Inc. | Optimized virtual machine specification for provisioning application specific runtime environment |
US8479195B2 (en) | 2007-05-16 | 2013-07-02 | Vmware, Inc. | Dynamic selection and application of multiple virtualization techniques |
US8051266B2 (en) | 2007-06-11 | 2011-11-01 | International Business Machines Corporation | Automatic memory management (AMM) |
US9495152B2 (en) | 2007-06-22 | 2016-11-15 | Red Hat, Inc. | Automatic baselining of business application service groups comprised of virtual machines |
US20090006897A1 (en) | 2007-06-27 | 2009-01-01 | Microsoft Corporation | Automated service testing |
US8161476B2 (en) | 2007-07-04 | 2012-04-17 | International Business Machines Corporation | Processor exclusivity in a partitioned system |
EP2015179A1 (en) | 2007-07-13 | 2009-01-14 | Alcatel Lucent | A remote management system and method for service objects |
US8074229B2 (en) | 2007-07-18 | 2011-12-06 | Sap Ag | Co-execution of objects from divergent runtime environments |
US8391295B2 (en) | 2007-07-31 | 2013-03-05 | Oracle International Corporation | Temporal affinity-based routing of workloads |
US20090055810A1 (en) | 2007-08-21 | 2009-02-26 | Nce Technologies Inc. | Method And System For Compilation And Execution Of Software Codes |
US8397236B2 (en) | 2007-08-24 | 2013-03-12 | Virtualmetrix, Inc. | Credit based performance managment of computer systems |
US8171473B2 (en) | 2007-08-31 | 2012-05-01 | International Business Machines Corporation | Method and apparatus for determining a service cluster topology based on static analysis |
US7827299B2 (en) | 2007-09-11 | 2010-11-02 | International Business Machines Corporation | Transitioning between historical and real time data streams in the processing of data change messages |
US8402472B2 (en) | 2007-09-14 | 2013-03-19 | International Business Machines Corporation | Network management system event notification shortcut |
WO2009043037A2 (en) | 2007-09-28 | 2009-04-02 | Xcerion Aktiebolag | Network operating system |
US8166304B2 (en) | 2007-10-02 | 2012-04-24 | International Business Machines Corporation | Support for multiple security policies on a unified authentication architecture |
US20090204964A1 (en) | 2007-10-12 | 2009-08-13 | Foley Peter F | Distributed trusted virtualization platform |
US8127284B2 (en) | 2007-10-16 | 2012-02-28 | Microsoft Corporation | On-demand loading of types of software code of a program executing on a computing device |
US8566835B2 (en) | 2007-12-13 | 2013-10-22 | Hewlett-Packard Development Company, L.P. | Dynamically resizing a virtual machine container |
US20090158407A1 (en) | 2007-12-13 | 2009-06-18 | Fiberlink Communications Corporation | Api translation for network access control (nac) agent |
US20110040812A1 (en) | 2007-12-20 | 2011-02-17 | Virtual Computer, Inc. | Layered Virtual File System |
US8473956B2 (en) | 2008-01-15 | 2013-06-25 | Microsoft Corporation | Priority based scheduling system for server |
US8560694B2 (en) | 2008-02-01 | 2013-10-15 | Microsoft Corporation | Virtual application server with version control |
US9928260B2 (en) | 2008-02-11 | 2018-03-27 | Nuix Pty Ltd | Systems and methods for scalable delocalized information governance |
US8156503B2 (en) | 2008-02-12 | 2012-04-10 | International Business Machines Corporation | System, method and computer program product for accessing a memory space allocated to a virtual machine |
CN101534418A (zh) | 2008-03-11 | 2009-09-16 | 深圳华为通信技术有限公司 | 数字电视节目预订播放方法、机顶盒设备及播放系统 |
US8387075B1 (en) | 2008-03-28 | 2013-02-26 | Emc Corporation | Common scheduling and synchronization primitives |
US9086924B2 (en) | 2008-04-24 | 2015-07-21 | International Business Machines Corporation | Executing a distributed java application on a plurality of compute nodes |
US7886021B2 (en) | 2008-04-28 | 2011-02-08 | Oracle America, Inc. | System and method for programmatic management of distributed computing resources |
US8473594B2 (en) | 2008-05-02 | 2013-06-25 | Skytap | Multitenant hosted virtual machine infrastructure |
US8424082B2 (en) | 2008-05-08 | 2013-04-16 | Google Inc. | Safely executing an untrusted native code module on a computing device |
US20090300599A1 (en) | 2008-05-30 | 2009-12-03 | Matthew Thomas Piotrowski | Systems and methods of utilizing virtual machines to protect computer systems |
US8543998B2 (en) | 2008-05-30 | 2013-09-24 | Oracle International Corporation | System and method for building virtual appliances using a repository metadata server and a dependency resolution service |
US8321850B2 (en) | 2008-06-06 | 2012-11-27 | Vmware, Inc. | Sharing and persisting code caches |
JP5120121B2 (ja) | 2008-07-15 | 2013-01-16 | コニカミノルタビジネステクノロジーズ株式会社 | 中継サーバ、中継方法および中継プログラム |
JP5157717B2 (ja) | 2008-07-28 | 2013-03-06 | 富士通株式会社 | 仮想バッテリを備えた仮想マシンシステムおよび仮想バッテリを備えた仮想マシンシステム用プログラム |
US8560713B2 (en) | 2008-07-31 | 2013-10-15 | Sap Ag | Method and system for mediating enterprise service access for smart devices |
US20100036925A1 (en) | 2008-08-07 | 2010-02-11 | Tactara, Llc | Alias management platforms |
US8725967B2 (en) | 2008-08-08 | 2014-05-13 | Amazon Technologies, Inc. | Providing executing programs with access to stored block data of others |
JP5215779B2 (ja) * | 2008-09-01 | 2013-06-19 | キヤノン株式会社 | 情報処理装置及び情報処理方法 |
US8307177B2 (en) | 2008-09-05 | 2012-11-06 | Commvault Systems, Inc. | Systems and methods for management of virtualization data |
US20100094816A1 (en) | 2008-09-09 | 2010-04-15 | Lockheed Martin Corporation | Safety-Critical Data Checking In Object-Oriented Systems |
DE112009002168A5 (de) | 2008-09-09 | 2012-03-15 | Kace Networks, Inc. | Auslieferung und Management von virtuellen Containern |
US9098698B2 (en) | 2008-09-12 | 2015-08-04 | George Mason Research Foundation, Inc. | Methods and apparatus for application isolation |
US8417723B1 (en) | 2008-09-12 | 2013-04-09 | Salesforce.Com, Inc. | System, method and computer program product for enabling access to a resource of a multi-tenant on-demand database service utilizing a token |
US20100070678A1 (en) | 2008-09-12 | 2010-03-18 | Vmware, Inc. | Saving and Restoring State Information for Virtualized Computer Systems |
US9798560B1 (en) | 2008-09-23 | 2017-10-24 | Gogrid, LLC | Automated system and method for extracting and adapting system configurations |
US7937625B2 (en) | 2008-09-26 | 2011-05-03 | Microsoft Corporation | Evaluating effectiveness of memory management techniques selectively using mitigations to reduce errors |
US8180604B2 (en) | 2008-09-30 | 2012-05-15 | Hewlett-Packard Development Company, L.P. | Optimizing a prediction of resource usage of multiple applications in a virtual environment |
US20100106926A1 (en) | 2008-10-25 | 2010-04-29 | International Business Machines Corporation | Second failure data capture problem determination using user selective memory protection to trace application failures |
US9141381B2 (en) | 2008-10-27 | 2015-09-22 | Vmware, Inc. | Version control environment for virtual machines |
US9176786B2 (en) | 2008-11-04 | 2015-11-03 | Novell, Inc. | Dynamic and automatic colocation and combining of service providers and service clients in a grid of resources for performing a data backup function |
US20100131959A1 (en) | 2008-11-26 | 2010-05-27 | Spiers Adam Z | Proactive application workload management |
US8214795B2 (en) | 2008-11-26 | 2012-07-03 | Optumsoft, Inc. | Efficient automated translation of procedures in constraint-based language |
US8336079B2 (en) | 2008-12-31 | 2012-12-18 | Hytrust, Inc. | Intelligent security control system for virtualized ecosystems |
US8769206B2 (en) | 2009-01-20 | 2014-07-01 | Oracle International Corporation | Methods and systems for implementing transcendent page caching |
US9344401B2 (en) | 2009-02-04 | 2016-05-17 | Citrix Systems, Inc. | Methods and systems for providing translations of data retrieved from a storage system in a cloud computing environment |
US8336049B2 (en) | 2009-02-05 | 2012-12-18 | Vmware, Inc. | Virtual machine utility computing method and system |
JP5419500B2 (ja) | 2009-03-12 | 2014-02-19 | キヤノン株式会社 | プログラムおよび情報処理装置 |
WO2010116676A1 (ja) | 2009-03-30 | 2010-10-14 | 日本電気株式会社 | サービス提供装置、サービス提供システム、サービス提供装置のデータ処理方法およびコンピュータプログラム |
US8321558B1 (en) * | 2009-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Dynamically monitoring and modifying distributed execution of programs |
US9817695B2 (en) | 2009-04-01 | 2017-11-14 | Vmware, Inc. | Method and system for migrating processes between virtual machines |
US9563866B2 (en) | 2009-04-06 | 2017-02-07 | Accenture Global Services Limited | Estimating a computing job complexity |
US8291416B2 (en) | 2009-04-17 | 2012-10-16 | Citrix Systems, Inc. | Methods and systems for using a plurality of historical metrics to select a physical host for virtual machine execution |
JP5091912B2 (ja) | 2009-05-21 | 2012-12-05 | 株式会社東芝 | マルチコアプロセッサシステム |
US10768611B2 (en) | 2009-06-16 | 2020-09-08 | Applied Materials, Inc. | Counter and timer constraints |
US8955108B2 (en) | 2009-06-17 | 2015-02-10 | Microsoft Corporation | Security virtual machine for advanced auditing |
US8140668B2 (en) | 2009-06-24 | 2012-03-20 | Red Hat Israel, Ltd. | Pre-scheduling the timelines of virtual machines |
WO2011002785A1 (en) | 2009-06-29 | 2011-01-06 | Fiberlink Communications Corporation | Universal connections data collection |
US8799879B2 (en) | 2009-06-30 | 2014-08-05 | Oracle America, Inc. | Method and apparatus for protecting translated code in a virtual machine |
US20110010690A1 (en) | 2009-07-07 | 2011-01-13 | Howard Robert S | System and Method of Automatically Transforming Serial Streaming Programs Into Parallel Streaming Programs |
US8769529B2 (en) | 2009-07-24 | 2014-07-01 | Novell, Inc. | Generating and automatically loading reduced operating system based on usage pattern of applications |
CA2674402C (en) | 2009-07-31 | 2016-07-19 | Ibm Canada Limited - Ibm Canada Limitee | Optimizing on demand allocation of virtual machines using a stateless preallocation pool |
US8832778B2 (en) | 2009-08-04 | 2014-09-09 | Carnegie Mellon University | Methods and apparatuses for user-verifiable trusted path in the presence of malware |
US8271653B2 (en) | 2009-08-31 | 2012-09-18 | Red Hat, Inc. | Methods and systems for cloud management using multiple cloud management schemes to allow communication between independently controlled clouds |
US8769083B2 (en) | 2009-08-31 | 2014-07-01 | Red Hat, Inc. | Metering software infrastructure in a cloud computing environment |
US20110055683A1 (en) | 2009-09-02 | 2011-03-03 | Facebook Inc. | Page caching for rendering dynamic web pages |
US8448165B1 (en) | 2009-09-15 | 2013-05-21 | Symantec Corporation | System and method for logging operations of virtual machines |
JP5069730B2 (ja) | 2009-09-15 | 2012-11-07 | ヤフー株式会社 | イベント通知機能提供装置、イベント通知機能提供方法及びイベント通知機能提供プログラム |
US8276139B2 (en) * | 2009-09-30 | 2012-09-25 | International Business Machines Corporation | Provisioning virtual machine placement |
US8412856B2 (en) | 2009-10-26 | 2013-04-02 | Sony Computer Entertainment America Llc. | File input/output scheduler using immediate data chunking |
US9086922B2 (en) | 2009-10-26 | 2015-07-21 | Microsoft Technology Licensing, Llc | Opportunistically scheduling and adjusting time slices |
US8875128B2 (en) | 2009-11-30 | 2014-10-28 | Red Hat Israel, Ltd. | Controlling permissions in virtualization environment using hierarchical labeling |
EP3001326B1 (en) | 2009-12-14 | 2017-07-26 | Citrix Systems Inc. | Methods and systems for communicating between trusted and non-trusted virtual machines |
US8924569B2 (en) | 2009-12-17 | 2014-12-30 | Intel Corporation | Cloud federation as a service |
US8949408B2 (en) | 2009-12-18 | 2015-02-03 | Microsoft Corporation | Session monitoring of virtual desktops in a virtual machine farm |
US8683465B2 (en) | 2009-12-18 | 2014-03-25 | International Business Machines Corporation | Virtual image deployment with a warm cache |
US20110153541A1 (en) | 2009-12-22 | 2011-06-23 | Caterpillar Inc. | Systems and methods for machine control in designated areas |
US20110154353A1 (en) | 2009-12-22 | 2011-06-23 | Bmc Software, Inc. | Demand-Driven Workload Scheduling Optimization on Shared Computing Resources |
US9805322B2 (en) | 2010-06-24 | 2017-10-31 | Bmc Software, Inc. | Application blueprint and deployment model for dynamic business service management (BSM) |
JP5282046B2 (ja) | 2010-01-05 | 2013-09-04 | 株式会社日立製作所 | 計算機システム及びその可用化方法 |
US8924982B2 (en) | 2010-01-12 | 2014-12-30 | Amazon Technologies, Inc. | Managing private use of program execution capacity |
US8346935B2 (en) | 2010-01-15 | 2013-01-01 | Joyent, Inc. | Managing hardware resources by sending messages amongst servers in a data center |
US9274821B2 (en) | 2010-01-27 | 2016-03-01 | Vmware, Inc. | Independent access to virtual machine desktop content |
US8478878B2 (en) | 2010-03-11 | 2013-07-02 | International Business Machines Corporation | Placement of virtual machines based on server cost and network cost |
US8271814B2 (en) * | 2010-03-22 | 2012-09-18 | Microsoft Corporation | Migrating a client computer to a virtual machine server when the client computer is deemed to be idle |
US20130132780A1 (en) | 2010-03-26 | 2013-05-23 | Software Diagnostics Technology Gmbh | Method for Automatically Detecting and Excluding a Tracing Instruction from Further Trace Data Generation for a Software System, a Computer System, and a Computer Program Product |
US8413142B2 (en) | 2010-03-30 | 2013-04-02 | Citrix Systems, Inc. | Storage optimization selection within a virtualization environment |
US9229783B2 (en) * | 2010-03-31 | 2016-01-05 | International Business Machines Corporation | Methods and apparatus for resource capacity evaluation in a system of virtual containers |
FR2958649B1 (fr) | 2010-04-07 | 2012-05-04 | Arkema France | Copolymere a blocs issu de matieres renouvelables et procede de fabrication d'un tel copolymere a blocs |
US9111031B2 (en) | 2010-04-16 | 2015-08-18 | Salesforce.Com, Inc. | Method and system for simulating and analyzing code execution in an on-demand service environment |
US8996611B2 (en) | 2011-01-31 | 2015-03-31 | Microsoft Technology Licensing, Llc | Parallel serialization of request processing |
US20110265069A1 (en) | 2010-04-21 | 2011-10-27 | Salesforce.Com | Methods and systems for execution of tenant code in an on-demand service environment including utilization of shared resources and inline governor limit enforcement |
US8959496B2 (en) | 2010-04-21 | 2015-02-17 | Microsoft Corporation | Automatic parallelization in a tracing just-in-time compiler system |
US8627426B2 (en) | 2010-04-26 | 2014-01-07 | Vmware, Inc. | Cloud platform architecture |
US8713565B2 (en) | 2010-04-28 | 2014-04-29 | International Business Machines Corporation | Automated tuning in a virtual machine computing environment |
US20110276963A1 (en) | 2010-05-04 | 2011-11-10 | Riverbed Technology, Inc. | Virtual Data Storage Devices and Applications Over Wide Area Networks |
US9461996B2 (en) | 2010-05-07 | 2016-10-04 | Citrix Systems, Inc. | Systems and methods for providing a single click access to enterprise, SAAS and cloud hosted application |
US8566792B2 (en) | 2010-05-07 | 2013-10-22 | Salesforce, Inc. | Validating visual components |
CN102971706B (zh) | 2010-05-10 | 2016-08-10 | 思杰系统有限公司 | 将信息从安全虚拟机重定向到不安全虚拟机 |
US9239909B2 (en) | 2012-01-25 | 2016-01-19 | Bromium, Inc. | Approaches for protecting sensitive data within a guest operating system |
US8972980B2 (en) | 2010-05-28 | 2015-03-03 | Bromium, Inc. | Automated provisioning of secure virtual execution environment using virtual machine templates based on requested activity |
US9116733B2 (en) | 2010-05-28 | 2015-08-25 | Bromium, Inc. | Automated provisioning of secure virtual execution environment using virtual machine templates based on requested activity |
JP5513997B2 (ja) | 2010-06-07 | 2014-06-04 | 日本電信電話株式会社 | 通信システムおよび通信システム更新方法 |
US8656387B2 (en) | 2010-06-17 | 2014-02-18 | Gridcentric Inc. | Method and system for workload distributing and processing across a network of replicated virtual machines |
US8887163B2 (en) | 2010-06-25 | 2014-11-11 | Ebay Inc. | Task scheduling based on dependencies and resources |
US8719415B1 (en) | 2010-06-28 | 2014-05-06 | Amazon Technologies, Inc. | Use of temporarily available computing nodes for dynamic scaling of a cluster |
US8739170B1 (en) * | 2010-06-30 | 2014-05-27 | Amazon Technologies, Inc. | Managing requests for computing capacity |
US8473949B2 (en) | 2010-07-08 | 2013-06-25 | Microsoft Corporation | Methods for supporting users with task continuity and completion across devices and time |
US8782434B1 (en) | 2010-07-15 | 2014-07-15 | The Research Foundation For The State University Of New York | System and method for validating program execution at run-time |
US20120016721A1 (en) | 2010-07-15 | 2012-01-19 | Joseph Weinman | Price and Utility Optimization for Cloud Computing Resources |
US8612413B2 (en) | 2010-08-12 | 2013-12-17 | Cdnetworks Co., Ltd. | Distributed data cache for on-demand application acceleration |
US9239996B2 (en) | 2010-08-24 | 2016-01-19 | Solano Labs, Inc. | Method and apparatus for clearing cloud compute demand |
US8359496B1 (en) | 2010-08-31 | 2013-01-22 | Google Inc. | Fault-resistant just-in-time compiler |
US8490088B2 (en) | 2010-09-10 | 2013-07-16 | International Business Machines Corporation | On demand virtual machine image streaming |
US8694400B1 (en) | 2010-09-14 | 2014-04-08 | Amazon Technologies, Inc. | Managing operational throughput for shared resources |
JP5476261B2 (ja) | 2010-09-14 | 2014-04-23 | 株式会社日立製作所 | マルチテナント型情報処理システム、管理サーバ及び構成管理方法 |
JP5653151B2 (ja) | 2010-09-17 | 2015-01-14 | キヤノン株式会社 | クラウドコンピューティングシステム、クラウドコンピューティングシステムの制御方法、および管理アプリケーション |
JP5644307B2 (ja) | 2010-09-17 | 2014-12-24 | 富士通株式会社 | 情報処理装置、情報処理装置の制御方法及び制御プログラム |
US8661076B2 (en) | 2010-09-23 | 2014-02-25 | Salesforce.Com, Inc. | Business networking information feed alerts |
SG188455A1 (en) | 2010-09-30 | 2013-04-30 | Amazon Tech Inc | Virtual resource cost tracking with dedicated implementation resources |
CN103154890B (zh) | 2010-10-12 | 2016-04-13 | 富士通株式会社 | 模拟装置、方法以及程序 |
US9069610B2 (en) | 2010-10-13 | 2015-06-30 | Microsoft Technology Licensing, Llc | Compute cluster with balanced resources |
US8607054B2 (en) | 2010-10-15 | 2013-12-10 | Microsoft Corporation | Remote access to hosted virtual machines by enterprise users |
US8296267B2 (en) | 2010-10-20 | 2012-10-23 | Microsoft Corporation | Upgrade of highly available farm server groups |
US8904190B2 (en) | 2010-10-20 | 2014-12-02 | Advanced Micro Devices, Inc. | Method and apparatus including architecture for protecting sensitive code and data |
US8375389B2 (en) | 2010-10-20 | 2013-02-12 | Microsoft Corporation | Ordered scheduling of suspended processes based on resumption events |
US9753713B2 (en) | 2010-10-22 | 2017-09-05 | Microsoft Technology Licensing, Llc | Coordinated upgrades in distributed systems |
US9645839B2 (en) | 2010-10-27 | 2017-05-09 | Microsoft Technology Licensing, Llc | Stateful applications operating in a stateless cloud computing environment |
JP2014038364A (ja) | 2010-10-27 | 2014-02-27 | Hitachi Ltd | リソース管理サーバ、リソース管理方法及びリソース管理プログラム |
US8756696B1 (en) | 2010-10-30 | 2014-06-17 | Sra International, Inc. | System and method for providing a virtualized secure data containment service with a networked environment |
US8959220B2 (en) | 2010-11-02 | 2015-02-17 | International Business Machines Corporation | Managing a workload of a plurality of virtual servers of a computing environment |
US9081613B2 (en) | 2010-11-02 | 2015-07-14 | International Business Machines Corporation | Unified resource manager providing a single point of control |
US9253016B2 (en) | 2010-11-02 | 2016-02-02 | International Business Machines Corporation | Management of a data network of a computing environment |
RO127693A2 (ro) | 2010-12-02 | 2012-07-30 | Adobe Systems Incorporated | Transmitere html nativă integrată |
US20120151479A1 (en) | 2010-12-10 | 2012-06-14 | Salesforce.Com, Inc. | Horizontal splitting of tasks within a homogenous pool of virtual machines |
US8601323B2 (en) | 2010-12-13 | 2013-12-03 | Sap Ag | Advanced management of runtime errors |
US8560699B1 (en) * | 2010-12-28 | 2013-10-15 | Amazon Technologies, Inc. | Enforceable launch configurations |
EP2659395A2 (en) | 2010-12-28 | 2013-11-06 | Citrix Systems, Inc. | Systems and methods for database proxy request switching |
US8745734B1 (en) * | 2010-12-29 | 2014-06-03 | Amazon Technologies, Inc. | Managing virtual computing testing |
US8713566B2 (en) | 2011-01-31 | 2014-04-29 | International Business Machines Corporation | Method and system for delivering and executing virtual container on logical partition of target computing device |
US8756581B2 (en) | 2011-02-03 | 2014-06-17 | International Business Machines Corporation | Adaptive next-executing-cycle trace selection for trace-driven code optimizers |
US9967318B2 (en) | 2011-02-09 | 2018-05-08 | Cisco Technology, Inc. | Apparatus, systems, and methods for cloud agnostic multi-tier application modeling and deployment |
US8903943B2 (en) | 2011-02-15 | 2014-12-02 | Salesforce.Com, Inc. | Integrating cloud applications and remote jobs |
US8555281B1 (en) | 2011-02-16 | 2013-10-08 | Google Inc. | Scheduling of tasks based upon historical execution times |
US8495648B1 (en) * | 2011-02-28 | 2013-07-23 | Amazon Technologies, Inc. | Managing allocation of computing capacity |
US9141410B2 (en) * | 2011-03-08 | 2015-09-22 | Rackspace Us, Inc. | Pluggable allocation in a cloud computing system |
US9015709B2 (en) * | 2011-03-08 | 2015-04-21 | Rackspace Us, Inc. | Hypervisor-agnostic method of configuring a virtual machine |
WO2012125564A1 (en) | 2011-03-11 | 2012-09-20 | Resource Interactive, Llc | Payment card industry data security standard compliant proxy service |
US8392558B1 (en) | 2011-03-22 | 2013-03-05 | Amazon Technologies, Inc. | System and method for determining overload state for service requests |
US8429282B1 (en) * | 2011-03-22 | 2013-04-23 | Amazon Technologies, Inc. | System and method for avoiding system overload by maintaining an ideal request rate |
CN102722412A (zh) | 2011-03-31 | 2012-10-10 | 国际商业机器公司 | 组合计算装置和方法 |
US9798831B2 (en) | 2011-04-01 | 2017-10-24 | Google Inc. | Processing data in a MapReduce framework |
US9002871B2 (en) | 2011-04-26 | 2015-04-07 | Brian J. Bulkowski | Method and system of mapreduce implementations on indexed datasets in a distributed database environment |
US8910156B1 (en) | 2011-04-29 | 2014-12-09 | Netapp, Inc. | Virtual machine dependency |
US9104477B2 (en) | 2011-05-05 | 2015-08-11 | Alcatel Lucent | Scheduling in MapReduce-like systems for fast completion time |
WO2012173175A1 (ja) | 2011-06-14 | 2012-12-20 | 日本電気株式会社 | コンテンツ配信システム、制御装置およびコンテンツ配信方法 |
US20120324236A1 (en) | 2011-06-16 | 2012-12-20 | Microsoft Corporation | Trusted Snapshot Generation |
US8756322B1 (en) | 2011-06-16 | 2014-06-17 | Amazon Technologies, Inc | Fulfillment of requests for computing capacity |
US9450838B2 (en) | 2011-06-27 | 2016-09-20 | Microsoft Technology Licensing, Llc | Resource management for cloud computing platforms |
US8615589B1 (en) | 2011-06-27 | 2013-12-24 | Amazon Technologies, Inc. | Resource optimization recommendations |
FR2977116A1 (fr) | 2011-06-27 | 2012-12-28 | France Telecom | Procede de fourniture de service d'execution de logiciel a la demande |
EP2726980A1 (en) | 2011-06-29 | 2014-05-07 | Hewlett-Packard Development Company, L.P. | Application migration with dynamic operating system containers |
KR101507919B1 (ko) | 2011-07-01 | 2015-04-07 | 한국전자통신연구원 | 가상 데스크탑 서비스를 위한 방법 및 장치 |
US8671407B2 (en) | 2011-07-06 | 2014-03-11 | Microsoft Corporation | Offering network performance guarantees in multi-tenant datacenters |
US8819679B2 (en) | 2011-07-28 | 2014-08-26 | International Business Machines Corporation | Methods and systems for on-boarding applications to a cloud |
US8813074B2 (en) | 2011-08-05 | 2014-08-19 | Vmware, Inc. | Detecting and correcting network interruptions using network address translation |
US8533715B2 (en) | 2011-08-09 | 2013-09-10 | International Business Machines Corporation | Virtual machine management |
US9152405B2 (en) | 2011-08-22 | 2015-10-06 | International Business Machines Corporation | Rapid provisioning of virtual machines based on multi-dimensional user request patterns in a cloud |
WO2013029051A2 (en) | 2011-08-25 | 2013-02-28 | to fuVIRTUSTREAM, INC. | Systems and methods of host-aware resource management involving cluster-based resource pools |
US9516368B2 (en) | 2011-08-25 | 2016-12-06 | At&T Intellectual Property I, L.P. | System for consolidating heterogeneous data centers through virtualization of services |
US8898676B2 (en) | 2011-08-26 | 2014-11-25 | Vmware, Inc. | Management of software updates for software components in a virtualized environment of a datacenter using dependency relationships |
US8635607B2 (en) | 2011-08-30 | 2014-01-21 | Microsoft Corporation | Cloud-based build service |
US8832035B2 (en) * | 2011-08-30 | 2014-09-09 | Netapp, Inc. | System and method for retaining deduplication in a storage object after a clone split operation |
US20130061220A1 (en) | 2011-09-06 | 2013-03-07 | Xerox Corporation | Method for on-demand inter-cloud load provisioning for transient bursts of computing needs |
US8621439B2 (en) | 2011-09-06 | 2013-12-31 | Microsoft Corporation | Modern application tracing |
US8863082B2 (en) | 2011-09-07 | 2014-10-14 | Microsoft Corporation | Transformational context-aware data source management |
JP5740257B2 (ja) | 2011-09-08 | 2015-06-24 | 株式会社日立ソリューションズ | OSGiプログラム、OSGiシステム |
US8578394B2 (en) | 2011-09-09 | 2013-11-05 | Microsoft Corporation | Exempting applications from suspension |
JP2013061700A (ja) | 2011-09-12 | 2013-04-04 | Sony Corp | 情報処理装置、情報処理方法、記録媒体および情報処理システム |
US8839035B1 (en) * | 2011-09-14 | 2014-09-16 | Amazon Technologies, Inc. | Cloud-based test execution |
US8825863B2 (en) | 2011-09-20 | 2014-09-02 | International Business Machines Corporation | Virtual machine placement within a server farm |
US8825964B1 (en) | 2011-09-26 | 2014-09-02 | Emc Corporation | Adaptive integration of cloud data services with a data storage system |
WO2013048986A1 (en) | 2011-09-26 | 2013-04-04 | Knoa Software, Inc. | Method, system and program product for allocation and/or prioritization of electronic resources |
US9497136B1 (en) | 2011-09-28 | 2016-11-15 | Emc Corporation | Method and system for providing usage metrics to manage utilzation of cloud computing resources |
DE102012217202B4 (de) | 2011-10-12 | 2020-06-18 | International Business Machines Corporation | Verfahren und System zum Optimieren des Platzierens virtueller Maschinen in Cloud-Computing-Umgebungen |
US8914515B2 (en) | 2011-10-28 | 2014-12-16 | International Business Machines Corporation | Cloud optimization using workload analysis |
US9213503B2 (en) | 2011-10-30 | 2015-12-15 | Hewlett-Packard Development Company, L.P. | Service provider management of virtual instances corresponding to hardware resources managed by other service providers |
JP5624973B2 (ja) | 2011-11-04 | 2014-11-12 | 株式会社日立製作所 | フィルタリング装置 |
US9003141B2 (en) | 2011-11-14 | 2015-04-07 | Ca, Inc. | Enhanced software application platform |
CN103930898B (zh) | 2011-11-15 | 2016-10-12 | 国立研究开发法人科学技术振兴机构 | 程序分析/验证服务提供系统及其控制方法、程序分析/验证装置、程序分析/验证工具管理装置 |
TWI478063B (zh) | 2011-11-21 | 2015-03-21 | Inst Information Industry | 於虛擬機器提供應用程式之系統以及方法以及儲存其之電腦可讀取記錄媒體 |
US8924954B2 (en) | 2011-11-22 | 2014-12-30 | Huawei Technologies Co., Ltd. | Application software installation method and application software installation apparatus |
US9898393B2 (en) | 2011-11-22 | 2018-02-20 | Solano Labs, Inc. | System for distributed software quality improvement |
TW201322022A (zh) | 2011-11-24 | 2013-06-01 | Alibaba Group Holding Ltd | 分散式資料流處理方法及其系統 |
US8826277B2 (en) * | 2011-11-29 | 2014-09-02 | International Business Machines Corporation | Cloud provisioning accelerator |
US9208123B2 (en) | 2011-12-07 | 2015-12-08 | Seven Networks, Llc | Mobile device having content caching mechanisms integrated with a network operator for traffic alleviation in a wireless network and methods therefor |
US8769519B2 (en) | 2011-12-08 | 2014-07-01 | Microsoft Corporation | Personal and pooled virtual machine update |
US9363099B2 (en) | 2011-12-13 | 2016-06-07 | Ericsson Ab | UPnP/DLNA with RADA hive |
US8694995B2 (en) | 2011-12-14 | 2014-04-08 | International Business Machines Corporation | Application initiated negotiations for resources meeting a performance parameter in a virtualized computing environment |
US9635132B1 (en) | 2011-12-15 | 2017-04-25 | Amazon Technologies, Inc. | Service and APIs for remote volume-based block storage |
US10310878B2 (en) | 2011-12-16 | 2019-06-04 | Vmware, Inc. | Execution of an application in a runtime environment installed in a virtual appliance |
US9609020B2 (en) | 2012-01-06 | 2017-03-28 | Optio Labs, Inc. | Systems and methods to enforce security policies on the loading, linking, and execution of native code by mobile applications running inside of virtual machines |
US8904008B2 (en) | 2012-01-09 | 2014-12-02 | Microsoft Corporation | Assignment of resources in virtual machine pools |
US9372735B2 (en) | 2012-01-09 | 2016-06-21 | Microsoft Technology Licensing, Llc | Auto-scaling of pool of virtual machines based on auto-scaling rules of user associated with the pool |
US9170849B2 (en) | 2012-01-09 | 2015-10-27 | Microsoft Technology Licensing, Llc | Migration of task to different pool of resources based on task retry count during task lease |
US20130179894A1 (en) | 2012-01-09 | 2013-07-11 | Microsoft Corporation | Platform as a service job scheduling |
US20130185729A1 (en) | 2012-01-13 | 2013-07-18 | Rutgers, The State University Of New Jersey | Accelerating resource allocation in virtualized environments using workload classes and/or workload signatures |
US9223607B2 (en) | 2012-01-17 | 2015-12-29 | Microsoft Technology Licensing, Llc | System for replicating or migrating virtual machine operations log by throttling guest write iOS based on destination throughput |
US9208007B2 (en) | 2012-01-18 | 2015-12-08 | International Business Machines Corporation | Open resilience framework for simplified and coordinated orchestration of multiple availability managers |
US8789047B2 (en) | 2012-01-26 | 2014-07-22 | Empire Technology Development Llc | Allowing world switches between virtual machines via hypervisor world switch security setting |
US9110728B2 (en) | 2012-01-31 | 2015-08-18 | Vmware, Inc. | Elastic allocation of computing resources to software applications |
US9262238B2 (en) | 2012-01-31 | 2016-02-16 | Red Hat, Inc. | Connection management for an application in a computing platform |
KR101629879B1 (ko) | 2012-02-06 | 2016-06-13 | 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 | 캐시 사용 기반 어댑티브 스케줄링을 가지는 멀티코어 컴퓨터 시스템 |
TWI459296B (zh) | 2012-02-21 | 2014-11-01 | Hon Hai Prec Ind Co Ltd | 增加伺服器的虛擬機配置數量的方法 |
US20130227710A1 (en) | 2012-02-27 | 2013-08-29 | Computer Associates Think, Inc. | System and method for securing leased images in a cloud environment |
US9720668B2 (en) | 2012-02-29 | 2017-08-01 | Red Hat, Inc. | Creating and maintaining multi-tenant applications in a platform-as-a-service (PaaS) environment of a cloud computing system |
US9047133B2 (en) | 2012-03-02 | 2015-06-02 | Vmware, Inc. | Single, logical, multi-tier application blueprint used for deployment and management of multiple physical applications in a cloud environment |
CN103294554A (zh) | 2012-03-05 | 2013-09-11 | 中兴通讯股份有限公司 | 片上系统soc的多处理器的调度方法及装置 |
US9112935B2 (en) | 2012-03-05 | 2015-08-18 | Microsoft Technology Licensing, Llc | Manipulating binary large objects |
US9009734B2 (en) | 2012-03-06 | 2015-04-14 | Autodesk, Inc. | Application level speculative processing |
US8725702B1 (en) | 2012-03-15 | 2014-05-13 | Symantec Corporation | Systems and methods for repairing system files |
US10222926B2 (en) | 2012-03-19 | 2019-03-05 | Citrix Systems, Inc. | Systems and methods for providing user interfaces for management applications |
US9026658B2 (en) * | 2012-03-28 | 2015-05-05 | Microsoft Technology Licensing, Llc | Enhanced computer cluster operation using resource allocation requests |
US20130263117A1 (en) | 2012-03-28 | 2013-10-03 | International Business Machines Corporation | Allocating resources to virtual machines via a weighted cost ratio |
CN104321782B (zh) | 2012-03-30 | 2018-01-12 | 爱迪德技术有限公司 | web应用的安全执行 |
US9053603B2 (en) | 2012-04-17 | 2015-06-09 | Igt | Cloud based virtual environment authentication |
US9462081B2 (en) | 2012-04-17 | 2016-10-04 | Igt | Cloud based virtual environment validation |
US8997093B2 (en) * | 2012-04-17 | 2015-03-31 | Sap Se | Application installation management by selectively reuse or terminate virtual machines based on a process status |
US9256413B2 (en) | 2012-04-17 | 2016-02-09 | Sap Se | Automatic identification of services |
US20130283141A1 (en) | 2012-04-20 | 2013-10-24 | Latitude Geographics Group Ltd. | Client Agnostic Spatial Workflow Form Definition and Rendering |
WO2013162548A1 (en) | 2012-04-25 | 2013-10-31 | Empire Technology Development, Llc | Certification for flexible resource demand applications |
US8918510B2 (en) | 2012-04-27 | 2014-12-23 | Hewlett-Packard Development Company, L. P. | Evaluation of cloud computing services |
US8955091B2 (en) | 2012-04-30 | 2015-02-10 | Zscaler, Inc. | Systems and methods for integrating cloud services with information management systems |
BR112014018142A8 (pt) | 2012-04-30 | 2017-07-11 | Hewlett Packard Development Co | Sistema de gestão automática de eventos para uma rede na nuvem, método para administrar eventos para serviços na nuvem e sistema de gerenciamento de eventos em nuvem |
US8850514B2 (en) | 2012-05-01 | 2014-09-30 | Red Hat, Inc. | Cartridges in a multi-tenant platforms-as-a-service (PaaS) system implemented in a cloud computing environment |
US8843935B2 (en) | 2012-05-03 | 2014-09-23 | Vmware, Inc. | Automatically changing a pre-selected datastore associated with a requested host for a virtual machine deployment based on resource availability during deployment of the virtual machine |
CN103384237B (zh) | 2012-05-04 | 2017-02-22 | 华为技术有限公司 | 一种共享IaaS业务云账号的方法、及共享平台和网络装置 |
GB2501757A (en) | 2012-05-04 | 2013-11-06 | Ibm | Instrumentation of software applications for configuration thereof |
DK2663052T3 (da) | 2012-05-09 | 2021-04-12 | Netflix Inc | API Platform, der indbefatter serverudført, klientbaseret kode |
WO2013171787A2 (en) | 2012-05-15 | 2013-11-21 | Hitachi, Ltd. | File storage system and load distribution method |
US8806644B1 (en) | 2012-05-25 | 2014-08-12 | Symantec Corporation | Using expectation measures to identify relevant application analysis results |
US8850432B2 (en) * | 2012-05-30 | 2014-09-30 | Red Hat, Inc. | Controlling utilization in a multi-tenant platform-as-a-service (PaaS) environment in a cloud computing system |
US8904402B2 (en) | 2012-05-30 | 2014-12-02 | Red Hat, Inc. | Controlling capacity in a multi-tenant platform-as-a-service environment in a cloud computing system |
US9317689B2 (en) | 2012-06-15 | 2016-04-19 | Visa International Service Association | Method and apparatus for secure application execution |
US8799236B1 (en) | 2012-06-15 | 2014-08-05 | Amazon Technologies, Inc. | Detecting duplicated content among digital items |
US8782632B1 (en) | 2012-06-18 | 2014-07-15 | Tellabs Operations, Inc. | Methods and apparatus for performing in-service software upgrade for a network device using system virtualization |
US9342326B2 (en) | 2012-06-19 | 2016-05-17 | Microsoft Technology Licensing, Llc | Allocating identified intermediary tasks for requesting virtual machines within a trust sphere on a processing goal |
US9141432B2 (en) | 2012-06-20 | 2015-09-22 | International Business Machines Corporation | Dynamic pending job queue length for job distribution within a grid environment |
US8959484B2 (en) | 2012-06-21 | 2015-02-17 | Microsoft Corporation | System for hosted, shared, source control build |
US8869157B2 (en) | 2012-06-21 | 2014-10-21 | Breakingpoint Systems, Inc. | Systems and methods for distributing tasks and/or processing recources in a system |
US8832820B2 (en) | 2012-06-25 | 2014-09-09 | International Business Machines Corporation | Isolation and security hardening among workloads in a multi-tenant networked environment |
US10031782B2 (en) | 2012-06-26 | 2018-07-24 | Juniper Networks, Inc. | Distributed processing of network device tasks |
US9098308B2 (en) | 2012-06-26 | 2015-08-04 | Marvell World Trade Ltd. | Method and apparatus for code performance analysis based on execution trace information |
US20140007097A1 (en) | 2012-06-29 | 2014-01-02 | Brocade Communications Systems, Inc. | Dynamic resource allocation for virtual machines |
US20150095822A1 (en) | 2012-07-02 | 2015-04-02 | eScoreMusic, Inc. | Systems and methods for music display, collaboration, annotation, composition, and editing |
US9298497B2 (en) | 2012-07-13 | 2016-03-29 | Wisconsin Alumni Research Foundation | Computer processor providing exception handling with reduced state storage |
US9396008B2 (en) | 2012-07-13 | 2016-07-19 | Ca, Inc. | System and method for continuous optimization of computing systems with automated assignment of virtual machines and physical machines to hosts |
US9152443B2 (en) | 2012-07-13 | 2015-10-06 | Ca, Inc. | System and method for automated assignment of virtual machines and physical machines to hosts with right-sizing |
US8972956B2 (en) | 2012-08-02 | 2015-03-03 | International Business Machines Corporation | Application deployment in heterogeneous environments |
US9563480B2 (en) | 2012-08-21 | 2017-02-07 | Rackspace Us, Inc. | Multi-level cloud computing system |
US8825550B2 (en) | 2012-08-23 | 2014-09-02 | Amazon Technologies, Inc. | Scaling a virtual machine instance |
US20140059552A1 (en) | 2012-08-24 | 2014-02-27 | International Business Machines Corporation | Transparent efficiency for in-memory execution of map reduce job sequences |
US9110844B2 (en) | 2012-08-27 | 2015-08-18 | Microsoft Technology Licensing, Llc | State maintenance as a service |
US9575871B2 (en) | 2012-09-04 | 2017-02-21 | Salesforce.Com, Inc. | System and method for dynamically debugging data in a multi-tenant database environment |
US8966495B2 (en) | 2012-09-05 | 2015-02-24 | Cisco Technology, Inc. | Dynamic virtual machine consolidation |
US8978035B2 (en) | 2012-09-06 | 2015-03-10 | Red Hat, Inc. | Scaling of application resources in a multi-tenant platform-as-a-service environment in a cloud computing system |
US20140073300A1 (en) | 2012-09-10 | 2014-03-13 | Genband Us Llc | Managing Telecommunication Services using Proximity-based Technologies |
US9379995B2 (en) | 2012-09-11 | 2016-06-28 | Vmware, Inc. | Resource allocation diagnosis on distributed computer systems based on resource hierarchy |
US9323577B2 (en) | 2012-09-20 | 2016-04-26 | Amazon Technologies, Inc. | Automated profiling of resource usage |
US9116680B2 (en) | 2012-09-26 | 2015-08-25 | International Business Machines Corporation | Dynamically building locale objects or subsections of locale objects based on historical data |
US9563663B2 (en) | 2012-09-28 | 2017-02-07 | Oracle International Corporation | Fast path evaluation of Boolean predicates |
JP2014075046A (ja) | 2012-10-04 | 2014-04-24 | International Business Maschines Corporation | トレース生成方法、装置、プログラム、及び該方法を利用したマルチレベルのコンパイレーション |
US9507586B2 (en) | 2012-10-05 | 2016-11-29 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Virtual machine based controller and upgrade mechanism |
US8613070B1 (en) | 2012-10-12 | 2013-12-17 | Citrix Systems, Inc. | Single sign-on access in an orchestration framework for connected devices |
US20140109176A1 (en) * | 2012-10-15 | 2014-04-17 | Citrix Systems, Inc. | Configuring and providing profiles that manage execution of mobile applications |
US9081682B2 (en) | 2012-10-15 | 2015-07-14 | Red Hat Israel, Ltd. | Virtual machine installation image caching |
US9229759B2 (en) | 2012-10-17 | 2016-01-05 | Microsoft Technology Licensing, Llc | Virtual machine provisioning using replicated containers |
US9600316B2 (en) * | 2012-10-17 | 2017-03-21 | Microsoft Technology Licensing, Llc | Augmented allocation of virtual machines for application |
US20160019536A1 (en) | 2012-10-17 | 2016-01-21 | Royal Bank Of Canada | Secure processing of data |
US9262212B2 (en) | 2012-11-02 | 2016-02-16 | The Boeing Company | Systems and methods for migrating virtual machines |
KR20150082218A (ko) | 2012-11-05 | 2015-07-15 | 엘지전자 주식회사 | 초고주파 대역을 지원하는 무선 접속 시스템에서 동기 신호 생성 방법 및 장치 |
US9038068B2 (en) * | 2012-11-15 | 2015-05-19 | Bank Of America Corporation | Capacity reclamation and resource adjustment |
US9578098B2 (en) | 2012-11-19 | 2017-02-21 | Hitachi, Ltd. | Management system and management method |
US9083757B2 (en) | 2012-11-21 | 2015-07-14 | Telefonaktiebolaget L M Ericsson LLP | Multi-objective server placement determination |
US9052935B1 (en) | 2012-11-27 | 2015-06-09 | Symantec Corporation | Systems and methods for managing affinity rules in virtual-machine environments |
US9092837B2 (en) * | 2012-11-29 | 2015-07-28 | International Business Machines Corporation | Use of snapshots to reduce risk in migration to a standard virtualized environment |
US9363367B2 (en) | 2012-12-05 | 2016-06-07 | Future Dial, Inc. | Using automatically collected device problem information to route and guide users' requests |
US9052932B2 (en) | 2012-12-17 | 2015-06-09 | International Business Machines Corporation | Hybrid virtual machine configuration management |
US9086902B2 (en) | 2012-12-18 | 2015-07-21 | International Business Machines Corporation | Sending tasks between virtual machines based on expiration times |
US9063795B2 (en) | 2012-12-19 | 2015-06-23 | International Business Machines Corporation | Adaptive resource usage limits for workload management |
US9329900B2 (en) | 2012-12-28 | 2016-05-03 | Intel Corporation | Hetergeneous processor apparatus and method |
US9459856B2 (en) | 2013-01-02 | 2016-10-04 | International Business Machines Corporation | Effective migration and upgrade of virtual machines in cloud environments |
US9384517B2 (en) | 2013-03-14 | 2016-07-05 | Google Inc. | Rendering |
US9304793B2 (en) | 2013-01-16 | 2016-04-05 | Vce Company, Llc | Master automation service |
US8886769B2 (en) | 2013-01-18 | 2014-11-11 | Limelight Networks, Inc. | Selective content pre-warming in content delivery networks based on user actions and content categorizations |
US9329888B2 (en) | 2013-01-28 | 2016-05-03 | International Business Machines Corporation | Computing optimized virtual machine allocations using equivalence combinations |
US10223431B2 (en) | 2013-01-31 | 2019-03-05 | Facebook, Inc. | Data stream splitting for low-latency data access |
US10552774B2 (en) | 2013-02-11 | 2020-02-04 | Amazon Technologies, Inc. | Cost-minimizing task scheduler |
JP5953421B2 (ja) | 2013-02-25 | 2016-07-20 | 株式会社日立製作所 | 仮想サーバおよび非仮想サーバ混在環境におけるテナントネットワーク構成の管理方法 |
US9336031B2 (en) | 2013-02-27 | 2016-05-10 | International Business Machines Corporation | Managing allocation of hardware resources in a virtualized environment |
US9524489B2 (en) | 2013-03-14 | 2016-12-20 | Samsung Electronics Co., Ltd. | Computing system with task transfer mechanism and method of operation thereof |
US8677359B1 (en) | 2013-03-14 | 2014-03-18 | Joyent, Inc. | Compute-centric object stores and methods of use |
US9027087B2 (en) | 2013-03-14 | 2015-05-05 | Rackspace Us, Inc. | Method and system for identity-based authentication of virtual machines |
WO2014144889A2 (en) | 2013-03-15 | 2014-09-18 | Amazon Technologies, Inc. | Scalable analysis platform for semi-structured data |
US9910896B2 (en) | 2013-03-15 | 2018-03-06 | Cisco Technology, Inc. | Suspending and resuming continuous queries over data streams |
US9311221B2 (en) | 2013-03-15 | 2016-04-12 | Ab Initio Technology Llc | Recording program execution |
US9130900B2 (en) * | 2013-03-15 | 2015-09-08 | Bao Tran | Assistive agent |
US9092238B2 (en) | 2013-03-15 | 2015-07-28 | Joyent, Inc. | Versioning schemes for compute-centric object stores |
US10430332B2 (en) | 2013-03-25 | 2019-10-01 | Salesforce.Com, Inc. | System and method for performance tuning of garbage collection algorithms |
US8893088B2 (en) | 2013-04-02 | 2014-11-18 | Apple Inc. | Dynamic program evaluation for system adaptation |
US10019297B2 (en) | 2013-04-03 | 2018-07-10 | Salesforce.Com, Inc. | Systems and methods for implementing bulk handling in asynchronous processing |
EP2984590A4 (en) | 2013-04-13 | 2017-01-04 | Kiss Digital Media Pty. Ltd. | Methods, systems, apparatus, products, articles and data structures for cross-platform digital content |
US9329881B2 (en) | 2013-04-23 | 2016-05-03 | Sap Se | Optimized deployment of data services on the cloud |
US9929916B1 (en) | 2013-05-02 | 2018-03-27 | Aspen Technology, Inc. | Achieving stateful application software service behavior in distributed stateless systems |
US9104848B2 (en) | 2013-05-08 | 2015-08-11 | International Business Machines Corporation | Cross-platform authentication from within a rich client |
US9628332B2 (en) | 2013-05-20 | 2017-04-18 | Microsoft Technology Licensing, Llc | Resource allocation to game titles in a remote gaming environment |
US10572124B2 (en) | 2013-05-20 | 2020-02-25 | Citrix Systems, Inc. | Bound based contextual zoom |
US9110732B1 (en) * | 2013-06-07 | 2015-08-18 | Amazon Technologies, Inc. | Proxy for injecting configuration information |
US20140365781A1 (en) | 2013-06-07 | 2014-12-11 | Technische Universitaet Darmstadt | Receiving a Delegated Token, Issuing a Delegated Token, Authenticating a Delegated User, and Issuing a User-Specific Token for a Resource |
US9489227B2 (en) | 2013-06-10 | 2016-11-08 | Electronics And Telecommunications Research Institute | Apparatus and method for virtual desktop service |
US9767138B2 (en) | 2013-06-12 | 2017-09-19 | Oracle International Corporation | In-database sharded queue for a shared-disk database |
US9141461B2 (en) | 2013-06-23 | 2015-09-22 | Intel Corporation | Machine check architecture execution environment for non-microcoded processor |
US9652617B1 (en) | 2013-06-25 | 2017-05-16 | Amazon Technologies, Inc. | Analyzing security of applications |
WO2015015473A1 (en) | 2013-08-02 | 2015-02-05 | Ologn Technologies Ag | A secure server on a system with virtual machines |
US9990499B2 (en) | 2013-08-05 | 2018-06-05 | Netflix, Inc. | Dynamic security testing |
US9111037B1 (en) | 2013-08-21 | 2015-08-18 | Ca, Inc. | Method and apparatus to enable mainframe computer testing for software testing management platform |
US20150067019A1 (en) | 2013-08-28 | 2015-03-05 | Soeren Balko | Method and system for using arbitrary computing devices for distributed data processing |
US9591003B2 (en) | 2013-08-28 | 2017-03-07 | Amazon Technologies, Inc. | Dynamic application security verification |
US20150074659A1 (en) | 2013-09-06 | 2015-03-12 | Vmware, Inc. | Methods and Apparatus to Perform Web-Based Installations and/or Upgrade Architectures for Enterprise Software |
US9680772B2 (en) | 2013-09-09 | 2017-06-13 | Vmware, Inc. | System and method for managing configuration of virtual switches in a virtual machine network |
US10339236B2 (en) | 2013-09-10 | 2019-07-02 | Vmware, Inc. | Techniques for improving computational throughput by using virtual machines |
US9298633B1 (en) | 2013-09-18 | 2016-03-29 | Emc Corporation | Adaptive prefecth for predicted write requests |
US20150106805A1 (en) | 2013-10-15 | 2015-04-16 | Cisco Technology, Inc. | Accelerated instantiation of cloud resource |
US10193963B2 (en) | 2013-10-24 | 2019-01-29 | Vmware, Inc. | Container virtual machines for hadoop |
US10635644B2 (en) | 2013-11-11 | 2020-04-28 | Amazon Technologies, Inc. | Partition-based data stream processing framework |
EP3069231B1 (en) | 2013-11-13 | 2020-11-04 | Palo Alto Networks, Inc. | Automated sdk ingestion |
US9298485B2 (en) | 2013-11-19 | 2016-03-29 | International Business Machines Corporation | Maintaining virtual machines for cloud-based operators in a streaming application in a ready state |
US9417918B2 (en) | 2013-11-20 | 2016-08-16 | International Business Machines Corporation | Computing session workload scheduling and management of parent-child tasks |
CN103946807B (zh) | 2013-11-20 | 2016-03-09 | 华为技术有限公司 | 一种生成快照的方法、系统和装置 |
CN104142858B (zh) | 2013-11-29 | 2016-09-28 | 腾讯科技(深圳)有限公司 | 阻塞任务调度方法及装置 |
US9213572B2 (en) | 2013-12-02 | 2015-12-15 | Vmware, Inc. | Interdependent virtual machine management |
US20160306613A1 (en) | 2013-12-03 | 2016-10-20 | Hewlett Packard Enterprise Development Lp | Code routine performance prediction using test results from code integration tool |
RU2571723C2 (ru) | 2013-12-05 | 2015-12-20 | Закрытое акционерное общество "Лаборатория Касперского" | Система и способ для снижения нагрузки на операционную систему при работе антивирусного приложения |
US9164754B1 (en) | 2013-12-18 | 2015-10-20 | Amazon Technologies, Inc. | Runtime patching of native-code programs |
US9477507B2 (en) | 2013-12-20 | 2016-10-25 | Vmware, Inc. | State customization of forked virtual machines |
US9501345B1 (en) | 2013-12-23 | 2016-11-22 | Intuit Inc. | Method and system for creating enriched log data |
CN103731427B (zh) | 2013-12-31 | 2017-04-12 | 华为技术有限公司 | 一种会话处理的方法、设备和系统 |
US10459594B2 (en) | 2013-12-31 | 2019-10-29 | Vmware, Inc. | Management of a pre-configured hyper-converged computing device |
CN104765620B (zh) | 2014-01-02 | 2018-01-26 | 国际商业机器公司 | 一种程序模块部署的方法和系统 |
EP2894564A1 (en) | 2014-01-10 | 2015-07-15 | Fujitsu Limited | Job scheduling based on historical job data |
EP3097486A4 (en) | 2014-01-20 | 2018-04-04 | Hewlett-Packard Development Company, L.P. | Determining a permission of a first tenant with respect to a second tenant |
US9935959B2 (en) | 2014-02-07 | 2018-04-03 | Oracle International Corporation | Cloud service custom execution environment |
US10133741B2 (en) | 2014-02-13 | 2018-11-20 | Amazon Technologies, Inc. | Log data service in a virtual environment |
WO2015130262A1 (en) | 2014-02-25 | 2015-09-03 | Hewlett-Packard Development Company, L.P. | Multiple pools in a multi-core system |
US10296362B2 (en) | 2014-02-26 | 2019-05-21 | Red Hat Israel, Ltd. | Execution of a script based on properties of a virtual device associated with a virtual machine |
US9110770B1 (en) | 2014-03-04 | 2015-08-18 | Amazon Technologies, Inc. | Assessing quality of code in an open platform environment |
US20150254248A1 (en) | 2014-03-07 | 2015-09-10 | Printeron Inc. | System for suggesting network resource for use by a network terminal based on network resource ranking |
US9479481B2 (en) | 2014-03-14 | 2016-10-25 | Soha Systems, Inc. | Secure scalable multi-tenant application delivery system and associated method |
US9632835B2 (en) | 2014-03-17 | 2017-04-25 | Ca, Inc. | Deployment of virtual machines to physical host machines based on infrastructure utilization decisions |
WO2015140531A1 (en) | 2014-03-18 | 2015-09-24 | British Telecommunications Public Limited Company | User authentication |
US10572817B2 (en) | 2014-03-19 | 2020-02-25 | Peopleconnect, Inc. | Graph-based organization entity resolution |
US10218633B2 (en) | 2014-03-28 | 2019-02-26 | Amazon Technologies, Inc. | Implementation of a service that coordinates the placement and execution of containers |
US9720661B2 (en) | 2014-03-31 | 2017-08-01 | International Businesss Machines Corporation | Selectively controlling use of extended mode features |
JP2015210718A (ja) | 2014-04-28 | 2015-11-24 | 富士通株式会社 | 記憶制御装置、ストレージシステム、および記憶制御プログラム |
US9459860B2 (en) | 2014-04-30 | 2016-10-04 | Paypal, Inc. | Mixed mode session management |
US9223966B1 (en) | 2014-05-04 | 2015-12-29 | Symantec Corporation | Systems and methods for replicating computing system environments |
US9652631B2 (en) | 2014-05-05 | 2017-05-16 | Microsoft Technology Licensing, Llc | Secure transport of encrypted virtual machines with continuous owner access |
US9678778B1 (en) | 2014-05-07 | 2017-06-13 | Google Inc. | Virtual cluster as a service (VCIaaS) |
US20150324229A1 (en) | 2014-05-09 | 2015-11-12 | International Business Machines Corporation | Propagation of task progress through the use of coalesced time intervals |
US9858060B2 (en) | 2014-05-09 | 2018-01-02 | International Business Machines Corporation | Automated deployment of a private modular cloud-computing environment |
US20150332195A1 (en) | 2014-05-13 | 2015-11-19 | Linkedln Corporation | Facilitating performance monitoring for periodically scheduled workflows |
US9250893B2 (en) | 2014-05-14 | 2016-02-02 | Western Digital Technologies, Inc. | Virtualized and automated software build system |
WO2015175942A1 (en) | 2014-05-15 | 2015-11-19 | Carnegie Mellon University | Method and apparatus for on-demand i/o channels for secure applications |
CA2969422A1 (en) | 2014-05-15 | 2015-11-19 | Lynx Software Technologies Inc. | Systems and methods involving features of hardware virtualization, hypervisor, apis of interest, and/or other features |
FR3021108B1 (fr) | 2014-05-16 | 2016-05-06 | Thales Sa | Procede d'execution de services en temps reel, notamment de gestion de vol et systeme temps reel mettant en oeuvre un tel procede |
US9525893B2 (en) | 2014-05-28 | 2016-12-20 | Verizon Patent And Licensing Inc. | Methods and systems for managing storage of media program copies within a network digital video recording system |
US9703681B2 (en) | 2014-05-29 | 2017-07-11 | Microsoft Technology Licensing, Llc | Performance optimization tip presentation during debugging |
US9361102B2 (en) | 2014-06-09 | 2016-06-07 | Lehigh University | Methods for enforcing control flow of a computer program |
US9390260B2 (en) | 2014-06-09 | 2016-07-12 | Lehigh University | Methods for enforcing control flow of a computer program |
US9218176B1 (en) | 2014-06-13 | 2015-12-22 | International Business Machines Corporation | Software deployment in a distributed virtual machine environment |
US10061687B2 (en) | 2014-06-17 | 2018-08-28 | Paypal, Inc. | Self-learning and self-validating declarative testing |
US9405582B2 (en) | 2014-06-20 | 2016-08-02 | International Business Machines Corporation | Dynamic parallel distributed job configuration in a shared-resource environment |
US10162655B2 (en) | 2014-06-23 | 2018-12-25 | Vmware, Inc. | Hypervisor context switching using TLB tags in processors having more than two hierarchical privilege levels |
US10255090B2 (en) | 2014-06-23 | 2019-04-09 | Vmware, Inc. | Hypervisor context switching using a redirection exception vector in processors having more than two hierarchical privilege levels |
US20150371244A1 (en) | 2014-06-23 | 2015-12-24 | Ca, Inc. | Forecasting information technology workload demand |
US10432699B2 (en) | 2014-06-26 | 2019-10-01 | Vmware, Inc. | Crowd-sourced operational metric analysis of virtual appliances |
US9424065B2 (en) | 2014-06-26 | 2016-08-23 | Vmware, Inc. | Methods and apparatus to scale application deployments in cloud computing environments using virtual machine pools |
US9361145B1 (en) * | 2014-06-27 | 2016-06-07 | Amazon Technologies, Inc. | Virtual machine state replication using DMA write records |
US9760443B2 (en) | 2014-06-28 | 2017-09-12 | Vmware, Inc. | Using a recovery snapshot during live migration |
US9483299B2 (en) | 2014-06-30 | 2016-11-01 | Bmc Software, Inc. | Capacity risk management for virtual machines |
US9613127B1 (en) | 2014-06-30 | 2017-04-04 | Quantcast Corporation | Automated load-balancing of partitions in arbitrarily imbalanced distributed mapreduce computations |
US20150378762A1 (en) | 2014-06-30 | 2015-12-31 | Vmware, Inc. | Monitoring and dynamic configuration of virtual-machine memory-management |
US20160294614A1 (en) | 2014-07-07 | 2016-10-06 | Symphony Teleca Corporation | Remote Embedded Device Update Platform Apparatuses, Methods and Systems |
US9983901B2 (en) | 2014-07-09 | 2018-05-29 | Google Llc | Dynamic shard allocation adjustment |
US10545947B2 (en) | 2014-07-14 | 2020-01-28 | Oracle International Corporation | Message personalization over multiple internet messaging campaigns |
US20160019081A1 (en) | 2014-07-21 | 2016-01-21 | Vmware,Inc. | Viewing a snapshot of a virtual machine |
US9612859B2 (en) | 2014-07-21 | 2017-04-04 | Vmware, Inc. | Comparing states of a virtual machine |
US20160026486A1 (en) | 2014-07-25 | 2016-01-28 | Soft Machines, Inc. | An allocation and issue stage for reordering a microinstruction sequence into an optimized microinstruction sequence to implement an instruction set agnostic runtime architecture |
US20160070714A1 (en) | 2014-09-10 | 2016-03-10 | Netapp, Inc. | Low-overhead restartable merge operation with efficient crash recovery |
US9513941B2 (en) | 2014-09-17 | 2016-12-06 | International Business Machines Corporation | Codeless generation of APIs |
CN104243479B (zh) | 2014-09-19 | 2018-05-08 | 北京电游互动科技有限公司 | 一种外接设备聚合装置和方法 |
US9436555B2 (en) * | 2014-09-22 | 2016-09-06 | Commvault Systems, Inc. | Efficient live-mount of a backed up virtual machine in a storage management system |
US9823983B2 (en) | 2014-09-25 | 2017-11-21 | Nxp Usa, Inc. | Electronic fault detection unit |
US20160092493A1 (en) | 2014-09-29 | 2016-03-31 | International Business Machines Corporation | Executing map-reduce jobs with named data |
US9678773B1 (en) * | 2014-09-30 | 2017-06-13 | Amazon Technologies, Inc. | Low latency computational capacity provisioning |
US9146764B1 (en) | 2014-09-30 | 2015-09-29 | Amazon Technologies, Inc. | Processing event messages for user requests to execute program code |
US10048974B1 (en) | 2014-09-30 | 2018-08-14 | Amazon Technologies, Inc. | Message-based computation request scheduling |
US9600312B2 (en) | 2014-09-30 | 2017-03-21 | Amazon Technologies, Inc. | Threading as a service |
US9323556B2 (en) | 2014-09-30 | 2016-04-26 | Amazon Technologies, Inc. | Programmatic event detection and message generation for requests to execute program code |
US9830193B1 (en) | 2014-09-30 | 2017-11-28 | Amazon Technologies, Inc. | Automatic management of low latency computational capacity |
US9715402B2 (en) | 2014-09-30 | 2017-07-25 | Amazon Technologies, Inc. | Dynamic code deployment and versioning |
US9652273B2 (en) | 2014-10-02 | 2017-05-16 | Vmware, Inc. | Method and system for creating a hierarchy of virtual machine templates in a virtualized computing system |
TWI537827B (zh) | 2014-10-06 | 2016-06-11 | 第五代虛擬科技股份有限公司 | 應用軟體試用系統、方法及其伺服器與使用者裝置 |
US9563513B2 (en) | 2014-10-09 | 2017-02-07 | International Business Machines Corporation | O(1) virtual machine (VM) snapshot management |
US9501420B2 (en) | 2014-10-22 | 2016-11-22 | Netapp, Inc. | Cache optimization technique for large working data sets |
US9930133B2 (en) | 2014-10-23 | 2018-03-27 | Netapp, Inc. | System and method for managing application performance |
JP5904514B1 (ja) | 2014-10-28 | 2016-04-13 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 仮想マシンのスナップショットに対して更新を自動的に適用する方法、並びに、そのコンピュータ・システム及びコンピュータ・システム用プログラム |
US10007445B2 (en) | 2014-11-04 | 2018-06-26 | Rubrik, Inc. | Identification of virtual machines using a distributed job scheduler |
US10516733B2 (en) | 2014-11-25 | 2019-12-24 | Auth0, Inc. | Multi-tenancy via code encapsulated in server requests |
US9413626B2 (en) | 2014-12-05 | 2016-08-09 | Amazon Technologies, Inc. | Automatic management of resource sizing |
US9864636B1 (en) | 2014-12-10 | 2018-01-09 | Amazon Technologies, Inc. | Allocating processor resources based on a service-level agreement |
WO2016094840A2 (en) | 2014-12-11 | 2016-06-16 | Ghosh Sudeep | System, method & computer readable medium for software protection via composable process-level virtual machines |
US9661011B1 (en) | 2014-12-17 | 2017-05-23 | Amazon Technologies, Inc. | Techniques for data routing and management using risk classification and data sampling |
CN104459306B (zh) | 2014-12-18 | 2017-02-22 | 东北大学 | 一种电熔镁群炉用电需量远程监控系统及方法 |
US20160191420A1 (en) | 2014-12-27 | 2016-06-30 | Intel Corporation | Mitigating traffic steering inefficiencies in distributed uncore fabric |
WO2016106516A1 (zh) | 2014-12-29 | 2016-07-07 | 华为技术有限公司 | 在分布式资源系统中用户请求的调度方法和装置 |
US11494447B2 (en) | 2015-01-13 | 2022-11-08 | Google Llc | Distributed file system for virtualized computing clusters |
US10033570B2 (en) | 2015-01-15 | 2018-07-24 | International Business Machines Corporation | Distributed map reduce network |
US9563613B1 (en) | 2015-01-23 | 2017-02-07 | Sprint Communications Company L.P. | System and method for dynamic portable document file generation |
US9588790B1 (en) | 2015-02-04 | 2017-03-07 | Amazon Technologies, Inc. | Stateful virtual compute system |
US9733967B2 (en) | 2015-02-04 | 2017-08-15 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9727725B2 (en) | 2015-02-04 | 2017-08-08 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9471775B1 (en) | 2015-02-04 | 2016-10-18 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9921864B2 (en) | 2015-02-26 | 2018-03-20 | Vmware, Inc. | Dynamic host performance tuning of a network stack |
US9965309B2 (en) | 2015-03-23 | 2018-05-08 | Empire Technology Development Llc | Virtual machine placement |
US9625984B2 (en) | 2015-03-27 | 2017-04-18 | Intel Corporation | Technologies for managing power during an activation cycle |
US9430290B1 (en) | 2015-03-31 | 2016-08-30 | International Business Machines Corporation | Determining storage tiers for placement of data sets during execution of tasks in a workflow |
US9632846B2 (en) | 2015-04-02 | 2017-04-25 | Microsoft Technology Licensing, Llc | Complex event processor for historic/live/replayed data |
US9658942B2 (en) | 2015-04-02 | 2017-05-23 | International Business Machines Corporation | Dynamic tracing framework for debugging in virtualized environments |
US9930103B2 (en) | 2015-04-08 | 2018-03-27 | Amazon Technologies, Inc. | Endpoint management system providing an application programming interface proxy service |
US9785476B2 (en) | 2015-04-08 | 2017-10-10 | Amazon Technologies, Inc. | Endpoint management system and virtual compute system |
EP3082038A1 (en) | 2015-04-15 | 2016-10-19 | Hybridserver Tec AG | Method, device and system for creating a massively parallelized executable object |
US9756020B2 (en) | 2015-04-27 | 2017-09-05 | Microsoft Technology Licensing, Llc | Persistent uniform resource locators (URLs) for client applications acting as web services |
US20160350099A1 (en) | 2015-05-29 | 2016-12-01 | Hewlett Packard Enterprise Development Lp | Application deployment to virtual machines |
US9715416B2 (en) | 2015-06-03 | 2017-07-25 | Intel Corporation | Adaptive queued locking for control of speculative execution |
US9785424B2 (en) | 2015-06-05 | 2017-10-10 | Apple Inc. | Capability attributes based application packaging |
US9612865B2 (en) | 2015-06-15 | 2017-04-04 | International Business Machines Corporation | Managed services coordinator |
US10481982B2 (en) | 2015-06-16 | 2019-11-19 | Mongodb, Inc. | System and method for facilitating replication in a distributed database |
US9921885B2 (en) | 2015-06-19 | 2018-03-20 | Vmware, Inc. | Resource management for containers in a virtualized environment |
US9880837B2 (en) | 2015-06-24 | 2018-01-30 | Vmware, Inc. | Artifact manager for release automation |
US11429442B2 (en) | 2015-06-29 | 2022-08-30 | Vmware, Inc. | Parallel and distributed computing using multiple virtual machines |
US20160378547A1 (en) | 2015-06-29 | 2016-12-29 | Amazon Technologies, Inc. | Preserving state during virtual machine instance migration |
US10146635B1 (en) | 2015-06-30 | 2018-12-04 | EMC IP Holding Company LLC | Virtual machine backup |
US9720953B2 (en) | 2015-07-01 | 2017-08-01 | Zestfinance, Inc. | Systems and methods for type coercion |
US10531226B1 (en) | 2015-07-10 | 2020-01-07 | WeWork Companies Inc. | Determining qualified devices using zone information |
US9946874B2 (en) | 2015-08-06 | 2018-04-17 | International Business Machines Corporation | Authenticating application legitimacy |
US9660809B2 (en) | 2015-08-07 | 2017-05-23 | Adobe Systems Incorporated | Cross-site request forgery defense |
US9852012B2 (en) | 2015-08-26 | 2017-12-26 | International Business Machines Corporation | Scheduling mapReduce tasks based on estimated workload distribution |
US10235209B2 (en) | 2015-08-28 | 2019-03-19 | Vmware, Inc. | Hybrid task framework |
US10198281B2 (en) | 2015-08-28 | 2019-02-05 | Vmware, Inc. | Hybrid infrastructure provisioning framework tethering remote datacenters |
US10083073B2 (en) | 2015-09-14 | 2018-09-25 | Dynatrace Llc | Method and system for real-time causality and root cause determination of transaction and infrastructure related events provided by multiple, heterogeneous agents |
US10198298B2 (en) | 2015-09-16 | 2019-02-05 | Salesforce.Com, Inc. | Handling multiple task sequences in a stream processing framework |
CN106548262B (zh) | 2015-09-21 | 2020-11-06 | 阿里巴巴集团控股有限公司 | 用于处理任务的资源的调度方法、装置和系统 |
US10007710B2 (en) | 2015-09-21 | 2018-06-26 | Splunk Inc. | Adaptive control of data collection requests sent to external data sources |
US10361972B2 (en) | 2015-09-23 | 2019-07-23 | Citrix Systems, Inc. | Systems and methods to support VXLAN in partition environment where a single system acts as multiple logical systems to support multitenancy |
US10104123B2 (en) | 2015-09-23 | 2018-10-16 | Ca, Inc. | Fetching a policy definition library from a policy server at mobile device runtime of an application package to control access to mobile device resources |
IN2015CH05184A (zh) | 2015-09-28 | 2015-10-16 | Wipro Ltd | |
US9928108B1 (en) | 2015-09-29 | 2018-03-27 | Amazon Technologies, Inc. | Metaevent handling for on-demand code execution environments |
US10042660B2 (en) | 2015-09-30 | 2018-08-07 | Amazon Technologies, Inc. | Management of periodic requests for compute capacity |
US10356206B2 (en) | 2015-11-08 | 2019-07-16 | Vmware, Inc. | Deploying an application in multiple cloud computing environments |
US10382409B2 (en) | 2015-11-25 | 2019-08-13 | Visa International Service Association | Secure multi-party protocol |
US20170161059A1 (en) | 2015-12-08 | 2017-06-08 | Paypal, Inc. | Management of multiple application programming interface versions for development environments |
US10846117B1 (en) | 2015-12-10 | 2020-11-24 | Fireeye, Inc. | Technique for establishing secure communication between host and guest processes of a virtualization architecture |
US9811363B1 (en) | 2015-12-16 | 2017-11-07 | Amazon Technologies, Inc. | Predictive management of on-demand code execution |
US9830449B1 (en) | 2015-12-16 | 2017-11-28 | Amazon Technologies, Inc. | Execution locations for request-driven code |
US9811434B1 (en) | 2015-12-16 | 2017-11-07 | Amazon Technologies, Inc. | Predictive management of on-demand code execution |
US10754701B1 (en) | 2015-12-16 | 2020-08-25 | Amazon Technologies, Inc. | Executing user-defined code in response to determining that resources expected to be utilized comply with resource restrictions |
US10013267B1 (en) | 2015-12-16 | 2018-07-03 | Amazon Technologies, Inc. | Pre-triggers for code execution environments |
US9514037B1 (en) | 2015-12-16 | 2016-12-06 | International Business Machines Corporation | Test program scheduling based on analysis of test data sets |
US9830175B1 (en) | 2015-12-16 | 2017-11-28 | Amazon Technologies, Inc. | Predictive management of on-demand code execution |
US9787779B2 (en) | 2015-12-21 | 2017-10-10 | Amazon Technologies, Inc. | Analyzing deployment pipelines used to update production computing services using a live pipeline template process |
US10002026B1 (en) | 2015-12-21 | 2018-06-19 | Amazon Technologies, Inc. | Acquisition and maintenance of dedicated, reserved, and variable compute capacity |
US10067801B1 (en) | 2015-12-21 | 2018-09-04 | Amazon Technologies, Inc. | Acquisition and maintenance of compute capacity |
US9910713B2 (en) | 2015-12-21 | 2018-03-06 | Amazon Technologies, Inc. | Code execution request routing |
WO2017107091A1 (en) | 2015-12-23 | 2017-06-29 | Intel IP Corporation | Virtual cpu consolidation to avoid physical cpu contention between virtual machines |
EP3341836A4 (en) | 2015-12-29 | 2018-07-18 | Samsung Electronics Co., Ltd. | Message based application state and card sharing methods for user devices |
US11089152B2 (en) | 2016-02-08 | 2021-08-10 | Aawaaz Inc. | Placement of a missed call |
US10608908B2 (en) | 2016-02-10 | 2020-03-31 | Nicira, Inc. | On-demand connection ping |
US10379824B2 (en) | 2016-02-26 | 2019-08-13 | Oracle International Corporation | Method for static security enforcement of a DSL |
US10182460B2 (en) | 2016-03-14 | 2019-01-15 | Zynga Inc. | Multitenancy gaming services platform |
CA3017941A1 (en) | 2016-03-15 | 2017-09-21 | Carbon Black, Inc. | System and method for process hollowing detection |
US10162672B2 (en) | 2016-03-30 | 2018-12-25 | Amazon Technologies, Inc. | Generating data streams from pre-existing data sets |
WO2017172440A1 (en) | 2016-03-30 | 2017-10-05 | Amazon Technologies, Inc. | Processing pre-existing data sets at an on-demand code execution environment |
US10891145B2 (en) | 2016-03-30 | 2021-01-12 | Amazon Technologies, Inc. | Processing pre-existing data sets at an on demand code execution environment |
US11106705B2 (en) | 2016-04-20 | 2021-08-31 | Zestfinance, Inc. | Systems and methods for parsing opaque data |
US10310820B2 (en) | 2016-05-12 | 2019-06-04 | Basal Nuclei Inc | Programming model and interpreted runtime environment for high performance services with implicit concurrency control |
JP6719079B2 (ja) | 2016-05-31 | 2020-07-08 | パナソニックIpマネジメント株式会社 | 情報機器、データ処理システム、データ処理方法およびコンピュータプログラム |
US9900765B2 (en) | 2016-06-02 | 2018-02-20 | Apple Inc. | Method and apparatus for creating and using a roaming list based on a user roaming plan |
US10768920B2 (en) | 2016-06-15 | 2020-09-08 | Microsoft Technology Licensing, Llc | Update coordination in a multi-tenant cloud computing environment |
US10592279B2 (en) | 2016-06-23 | 2020-03-17 | Advanced Micro Devices, Inc. | Multi-processor apparatus and method of detection and acceleration of lagging tasks |
US10139876B2 (en) | 2016-06-23 | 2018-11-27 | Vmware Inc. | Efficient reboot of an operating system executed in a virtual machine |
US20170371963A1 (en) | 2016-06-27 | 2017-12-28 | Facebook, Inc. | Systems and methods for identifying matching content |
US20190020913A9 (en) | 2016-06-27 | 2019-01-17 | Facebook, Inc. | Systems and methods for identifying matching content |
US9952896B2 (en) | 2016-06-28 | 2018-04-24 | Amazon Technologies, Inc. | Asynchronous task management in an on-demand network code execution environment |
US10282229B2 (en) | 2016-06-28 | 2019-05-07 | Amazon Technologies, Inc. | Asynchronous task management in an on-demand network code execution environment |
US10102040B2 (en) | 2016-06-29 | 2018-10-16 | Amazon Technologies, Inc | Adjusting variable limit on concurrent code executions |
US11625257B2 (en) | 2016-06-29 | 2023-04-11 | Vmware, Inc. | Provisioning executable managed objects of a virtualized computing environment from non-executable managed objects |
US9977691B2 (en) | 2016-06-29 | 2018-05-22 | Amazon Technologies, Inc. | Adjusting variable limit on concurrent code executions based on communication between frontends |
WO2018005829A1 (en) | 2016-06-30 | 2018-01-04 | Amazon Technologies, Inc. | On-demand code execution using cross-account aliases |
US10277708B2 (en) | 2016-06-30 | 2019-04-30 | Amazon Technologies, Inc. | On-demand network code execution with cross-account aliases |
US10203990B2 (en) | 2016-06-30 | 2019-02-12 | Amazon Technologies, Inc. | On-demand network code execution with cross-account aliases |
US9596350B1 (en) | 2016-07-21 | 2017-03-14 | Genesys Telecommunications Laboratories, Inc. | Virtual interactions in contact center operations |
US10089135B2 (en) | 2016-08-09 | 2018-10-02 | International Business Machines Corporation | Expediting the provisioning of virtual machines based on cached repeated portions of a template |
US9977670B2 (en) | 2016-08-10 | 2018-05-22 | Bank Of America Corporation | Application programming interface for providing access to computing platform definitions |
US10296498B2 (en) | 2016-08-23 | 2019-05-21 | Oracle International Corporation | Coordinated hash table indexes to facilitate reducing database reconfiguration time |
US20180060221A1 (en) | 2016-08-24 | 2018-03-01 | Google Inc. | Multi-layer test suite generation |
US20180060132A1 (en) | 2016-09-01 | 2018-03-01 | Amazon Technologies, Inc. | Stateful resource pool management for job execution |
US10191861B1 (en) | 2016-09-06 | 2019-01-29 | Fireeye, Inc. | Technique for implementing memory views using a layered virtualization architecture |
US10572395B2 (en) | 2016-09-07 | 2020-02-25 | Intel Corporation | Non-enclave access prevention |
US10831641B2 (en) | 2016-09-08 | 2020-11-10 | At&T Intellectual Property I, L.P. | Method and apparatus for determining a performance impact by a software upgrade of a mobile user endpoint device |
US10545792B2 (en) | 2016-09-12 | 2020-01-28 | Seven Bridges Genomics Inc. | Hashing data-processing steps in workflow environments |
US10061613B1 (en) | 2016-09-23 | 2018-08-28 | Amazon Technologies, Inc. | Idempotent task execution in on-demand network code execution systems |
US10884787B1 (en) | 2016-09-23 | 2021-01-05 | Amazon Technologies, Inc. | Execution guarantees in an on-demand network code execution system |
US11151097B2 (en) | 2016-09-25 | 2021-10-19 | Microsoft Technology Licensing, Llc | Dynamic schema inference and enforcement |
US11023463B2 (en) | 2016-09-26 | 2021-06-01 | Splunk Inc. | Converting and modifying a subquery for an external data system |
US11119813B1 (en) | 2016-09-30 | 2021-09-14 | Amazon Technologies, Inc. | Mapreduce implementation using an on-demand network code execution system |
US10430591B1 (en) | 2016-10-04 | 2019-10-01 | Bromium, Inc. | Using threat model to monitor host execution in a virtualized environment |
US10346625B2 (en) | 2016-10-31 | 2019-07-09 | International Business Machines Corporation | Automated mechanism to analyze elevated authority usage and capability |
US10102229B2 (en) | 2016-11-09 | 2018-10-16 | Palantir Technologies Inc. | Validating data integrations using a secondary data store |
US10417049B2 (en) | 2016-11-28 | 2019-09-17 | Amazon Technologies, Inc. | Intra-code communication in a localized device coordinator |
US10608973B2 (en) | 2016-11-28 | 2020-03-31 | Amazon Technologies, Inc. | Embedded codes in messaging protocol communications |
WO2018098443A1 (en) | 2016-11-28 | 2018-05-31 | Amazon Technologies, Inc. | On-demand code execution in a localized device coordinator |
US10193839B2 (en) | 2016-11-28 | 2019-01-29 | Amazon Technologies, Inc | Managing security in messaging protocol communications |
JP6935496B2 (ja) | 2016-11-28 | 2021-09-15 | アマゾン テクノロジーズ インコーポレイテッド | メッセージングプロトコル通信の管理 |
US10637817B2 (en) | 2016-11-28 | 2020-04-28 | Amazon Technologies, Inc. | Managing messaging protocol communications |
US9983982B1 (en) | 2017-01-04 | 2018-05-29 | Visa International Service Association | Testing software code in a production environment |
US10209962B2 (en) | 2017-02-06 | 2019-02-19 | International Business Machines Corporation | Reconstructing a high level compilable program from an instruction trace |
US20180239636A1 (en) | 2017-02-22 | 2018-08-23 | Nutanix, Inc. | Task execution framework using idempotent subtasks |
US10754685B2 (en) | 2017-03-03 | 2020-08-25 | Microsoft Technology Licensing Llc | Cross-device task registration and resumption |
EP3379413A1 (en) | 2017-03-21 | 2018-09-26 | Nokia Solutions and Networks Oy | Optimization of a software image layer stack |
US10360067B1 (en) | 2017-03-28 | 2019-07-23 | Amazon Technologies, Inc. | Dynamic function calls in an on-demand network code execution system |
US10514909B2 (en) | 2017-03-29 | 2019-12-24 | Technion Research & Development Foundation Limited | Similarity of binaries |
US20180300109A1 (en) | 2017-04-17 | 2018-10-18 | International Business Machines Corporation | Preserving dynamic trace purity |
US10382291B2 (en) | 2017-04-26 | 2019-08-13 | Oracle International Corporation | Provisioning framework for binding related cloud services |
US10650156B2 (en) | 2017-04-26 | 2020-05-12 | International Business Machines Corporation | Environmental security controls to prevent unauthorized access to files, programs, and objects |
US10423158B1 (en) | 2017-05-03 | 2019-09-24 | Amazon Technologies, Inc. | Multi-core processor with independently executing flight control programs |
US10459822B1 (en) | 2017-05-04 | 2019-10-29 | Amazon Technologies, Inc. | Iterative static analysis using stored partial results |
US10397230B2 (en) | 2017-06-15 | 2019-08-27 | International Business Machines Corporation | Service processor and system with secure booting and monitoring of service processor integrity |
US10725826B1 (en) | 2017-06-21 | 2020-07-28 | Amazon Technologies, Inc. | Serializing duration-limited task executions in an on demand code execution system |
US10445140B1 (en) | 2017-06-21 | 2019-10-15 | Amazon Technologies, Inc. | Serializing duration-limited task executions in an on demand code execution system |
US10742750B2 (en) | 2017-07-20 | 2020-08-11 | Cisco Technology, Inc. | Managing a distributed network of function execution environments |
US10325392B2 (en) | 2017-08-01 | 2019-06-18 | Cimpress Schweiz Gmbh | Content replacement system using visual design object models |
US11047837B2 (en) | 2017-09-06 | 2021-06-29 | Green Ocean Sciences, Inc. | Mobile integrated device and electronic data platform for chemical analysis |
US10360025B2 (en) | 2017-09-08 | 2019-07-23 | Accenture Global Solutions Limited | Infrastructure instantiation, collaboration, and validation architecture for serverless execution frameworks |
US10686605B2 (en) | 2017-09-29 | 2020-06-16 | Intel Corporation | Technologies for implementing mutually distrusting domains |
US10615984B1 (en) | 2017-10-03 | 2020-04-07 | EMC IP Holding Company LLC | Enhanced authentication method for Hadoop job containers |
US10764051B2 (en) | 2017-10-25 | 2020-09-01 | Google Llc | Privacy-preserving identity verification |
US10587412B2 (en) | 2017-11-07 | 2020-03-10 | International Business Machines Corporation | Virtual machine structure |
US10565083B2 (en) | 2017-12-08 | 2020-02-18 | Cisco Technology, Inc. | Simulating hosted application performance |
US10564946B1 (en) | 2017-12-13 | 2020-02-18 | Amazon Technologies, Inc. | Dependency handling in an on-demand network code execution system |
US10803180B2 (en) | 2017-12-13 | 2020-10-13 | Jayant Shukla | Deterministic method for detecting and blocking of exploits on interpreted code |
US10303492B1 (en) | 2017-12-13 | 2019-05-28 | Amazon Technologies, Inc. | Managing custom runtimes in an on-demand code execution system |
US10803029B2 (en) | 2017-12-19 | 2020-10-13 | Salesforce.Com, Inc. | Generating javascript object notation (JSON) schema from JSON payloads |
US10402178B2 (en) | 2018-01-26 | 2019-09-03 | Accenture Global Solutions Limited | Cross platform content management and distribution system |
US10503626B2 (en) | 2018-01-29 | 2019-12-10 | Oracle International Corporation | Hybrid instrumentation framework for multicore low power processors |
US10924511B2 (en) | 2018-01-30 | 2021-02-16 | EMC IP Holding Company LLC | Systems and methods of chunking data for secure data storage across multiple cloud providers |
US10353678B1 (en) | 2018-02-05 | 2019-07-16 | Amazon Technologies, Inc. | Detecting code characteristic alterations due to cross-service calls |
US10831898B1 (en) | 2018-02-05 | 2020-11-10 | Amazon Technologies, Inc. | Detecting privilege escalations in code including cross-service calls |
US10572375B1 (en) | 2018-02-05 | 2020-02-25 | Amazon Technologies, Inc. | Detecting parameter validity in code including cross-service calls |
US10733085B1 (en) | 2018-02-05 | 2020-08-04 | Amazon Technologies, Inc. | Detecting impedance mismatches due to cross-service calls |
US10649792B1 (en) | 2018-02-09 | 2020-05-12 | American Megatrends International, Llc | Cloning of firmware configuration settings using rest over IPMI interface |
US10725752B1 (en) | 2018-02-13 | 2020-07-28 | Amazon Technologies, Inc. | Dependency handling in an on-demand network code execution system |
US11157300B2 (en) | 2018-02-13 | 2021-10-26 | Sophos Limited | Managing virtual machine security resources |
US10728034B2 (en) | 2018-02-23 | 2020-07-28 | Webroot Inc. | Security privilege escalation exploit detection and mitigation |
US10776091B1 (en) | 2018-02-26 | 2020-09-15 | Amazon Technologies, Inc. | Logging endpoint in an on-demand code execution system |
US10860367B2 (en) | 2018-03-14 | 2020-12-08 | Microsoft Technology Licensing, Llc | Opportunistic virtual machine migration |
US10621004B2 (en) | 2018-03-19 | 2020-04-14 | Accenture Global Solutions Limited | Resource control stack based system for multiple domain presentation of cloud computing resource control |
EP3776315A1 (en) | 2018-03-27 | 2021-02-17 | Telefonaktiebolaget LM Ericsson (publ) | Trusted execution environment instances licenses management |
US10466986B2 (en) | 2018-03-30 | 2019-11-05 | Oracle International Corporation | Optimized recompilation using hardware tracing |
US10984098B2 (en) | 2018-04-06 | 2021-04-20 | Palo Alto Networks, Inc. | Process privilege escalation protection in a computing environment |
US10503634B1 (en) | 2018-05-25 | 2019-12-10 | Microsoft Technology Licensing, Llc | Semantic comparison of computer compiler traces |
JP7197612B2 (ja) | 2018-06-25 | 2022-12-27 | アマゾン テクノロジーズ インコーポレイテッド | オンデマンドネットワークコード実行システム上での補助機能の実行 |
US10817331B2 (en) | 2018-06-25 | 2020-10-27 | Amazon Technologies, Inc. | Execution of auxiliary functions in an on-demand network code execution system |
US10853115B2 (en) | 2018-06-25 | 2020-12-01 | Amazon Technologies, Inc. | Execution of auxiliary functions in an on-demand network code execution system |
US10649749B1 (en) | 2018-06-26 | 2020-05-12 | Amazon Technologies, Inc. | Cross-environment application of tracing information for improved code execution |
US10911367B2 (en) | 2018-06-27 | 2021-02-02 | Oracle International Corporation | Computerized methods and systems for managing cloud computer services |
US10719367B1 (en) | 2018-06-27 | 2020-07-21 | Amazon Technologies, Inc. | Management of workers executing program code functions |
US10949237B2 (en) | 2018-06-29 | 2021-03-16 | Amazon Technologies, Inc. | Operating system customization in an on-demand network code execution system |
US10877774B2 (en) | 2018-07-17 | 2020-12-29 | Sap Se | Cloud integration of application runtime |
US10715630B2 (en) | 2018-07-20 | 2020-07-14 | Dell Products L.P. | Common information model interoperability system |
US10713080B1 (en) | 2018-07-25 | 2020-07-14 | Amazon Technologies, Inc. | Request-based virtual machine memory transitioning in an on-demand network code execution system |
US11099870B1 (en) | 2018-07-25 | 2021-08-24 | Amazon Technologies, Inc. | Reducing execution times in an on-demand network code execution system using saved machine states |
US10705928B2 (en) | 2018-08-28 | 2020-07-07 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for tenant-to-tenant failover in a multi-tenant cloud computing environment |
US20200073987A1 (en) | 2018-09-04 | 2020-03-05 | Salesforce.Com, Inc. | Technologies for runtime selection of query execution engines |
US20200081745A1 (en) | 2018-09-10 | 2020-03-12 | Nuweba Labs Ltd. | System and method for reducing cold start latency of serverless functions |
US11099917B2 (en) | 2018-09-27 | 2021-08-24 | Amazon Technologies, Inc. | Efficient state maintenance for execution environments in an on-demand code execution system |
US11243953B2 (en) | 2018-09-27 | 2022-02-08 | Amazon Technologies, Inc. | Mapreduce implementation in an on-demand network code execution system and stream data processing system |
US10740208B2 (en) | 2018-10-03 | 2020-08-11 | Capital One Services, Llc | Cloud infrastructure optimization |
US20200120112A1 (en) | 2018-10-10 | 2020-04-16 | Nuweba Labs Ltd. | Techniques for detecting known vulnerabilities in serverless functions as a service (faas) platform |
US10331462B1 (en) | 2018-11-06 | 2019-06-25 | Cloudflare, Inc. | Cloud computing platform that executes third-party code in a distributed cloud computing network |
US11075985B2 (en) | 2018-11-09 | 2021-07-27 | Cisco Technology, Inc. | Early action on deploying and executing functions in a serverless environment |
US11327814B2 (en) | 2018-11-28 | 2022-05-10 | International Business Machines Corporation | Semaphores for serverless computing |
US10884812B2 (en) | 2018-12-13 | 2021-01-05 | Amazon Technologies, Inc. | Performance-based hardware emulation in an on-demand network code execution system |
US11044117B2 (en) | 2018-12-26 | 2021-06-22 | Citrix Systems, Inc. | Intelligent and dynamic overlay tunnel formation via automatic discovery of citrivity/SDWAN peer in the datapath in a pure plug and play environment with zero networking |
US11010188B1 (en) | 2019-02-05 | 2021-05-18 | Amazon Technologies, Inc. | Simulated data object storage using on-demand computation of data objects |
US11323348B2 (en) | 2019-05-17 | 2022-05-03 | Citrix Systems, Inc. | API dependency error and latency injection |
US11119809B1 (en) | 2019-06-20 | 2021-09-14 | Amazon Technologies, Inc. | Virtualization-based transaction handling in an on-demand network code execution system |
US11115404B2 (en) | 2019-06-28 | 2021-09-07 | Amazon Technologies, Inc. | Facilitating service connections in serverless code executions |
US11190609B2 (en) | 2019-06-28 | 2021-11-30 | Amazon Technologies, Inc. | Connection pooling for scalable network services |
US11159528B2 (en) | 2019-06-28 | 2021-10-26 | Amazon Technologies, Inc. | Authentication to network-services using hosted authentication information |
US10942795B1 (en) | 2019-11-27 | 2021-03-09 | Amazon Technologies, Inc. | Serverless call distribution to utilize reserved capacity without inhibiting scaling |
US11119826B2 (en) | 2019-11-27 | 2021-09-14 | Amazon Technologies, Inc. | Serverless call distribution to implement spillover while avoiding cold starts |
WO2021108435A1 (en) | 2019-11-27 | 2021-06-03 | Amazon Technologies, Inc. | Serverless call distribution to utilize reserved capacity without inhibiting scaling |
-
2014
- 2014-09-30 US US14/502,992 patent/US9600312B2/en active Active
-
2015
- 2015-09-29 CN CN202110268031.5A patent/CN112860382A/zh active Pending
- 2015-09-29 WO PCT/US2015/052810 patent/WO2016053950A1/en active Application Filing
- 2015-09-29 CN CN201580053106.0A patent/CN107111507A/zh active Pending
- 2015-09-29 EP EP21213536.2A patent/EP4002113A1/en active Pending
- 2015-09-29 CA CA2962634A patent/CA2962634C/en active Active
- 2015-09-29 EP EP15846932.0A patent/EP3201767B1/en active Active
-
2017
- 2017-03-20 US US15/464,215 patent/US10140137B2/en active Active
-
2018
- 2018-11-26 US US16/200,275 patent/US10956185B2/en active Active
-
2021
- 2021-02-22 US US17/181,465 patent/US11561811B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1818873A (zh) * | 2005-02-11 | 2006-08-16 | 戴尔产品有限公司 | 用于虚拟机中的集中式软件管理的系统和方法 |
CN101512488A (zh) * | 2006-08-07 | 2009-08-19 | Bea系统公司 | 在虚拟机环境中提供硬件虚拟化的系统和方法 |
US8065676B1 (en) * | 2007-04-24 | 2011-11-22 | Hewlett-Packard Development Company, L.P. | Automated provisioning of virtual machines for a virtual machine buffer pool and production pool |
US20110134761A1 (en) * | 2009-12-03 | 2011-06-09 | International Business Machines Corporation | Dynamically provisioning virtual machines |
CN103098027A (zh) * | 2010-09-21 | 2013-05-08 | 亚马逊技术有限公司 | 用于动态管理计算容量请求的方法和系统 |
CN104169881A (zh) * | 2012-01-18 | 2014-11-26 | Dh2I公司 | 用于服务器集群应用程序虚拟化的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
EP4002113A1 (en) | 2022-05-25 |
US20190171470A1 (en) | 2019-06-06 |
WO2016053950A1 (en) | 2016-04-07 |
US11561811B2 (en) | 2023-01-24 |
US10140137B2 (en) | 2018-11-27 |
CN107111507A (zh) | 2017-08-29 |
CA2962634C (en) | 2021-07-13 |
US10956185B2 (en) | 2021-03-23 |
US20210389963A1 (en) | 2021-12-16 |
US20170192804A1 (en) | 2017-07-06 |
US9600312B2 (en) | 2017-03-21 |
EP3201767A1 (en) | 2017-08-09 |
EP3201767A4 (en) | 2018-05-30 |
EP3201767B1 (en) | 2022-01-19 |
CA2962634A1 (en) | 2016-04-07 |
US20160092252A1 (en) | 2016-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11561811B2 (en) | Threading as a service | |
CN107003862B (zh) | 动态代码部署和版本化 | |
US20220391238A1 (en) | Low latency computational capacity provisioning | |
CN107111508B (zh) | 用于执行程序代码的请求的程序性事件检测和消息生成 | |
CN108369534B (zh) | 代码执行请求路由 | |
CN107209682B (zh) | 资源调整的自动管理 | |
CN107533470B (zh) | 一种用于从虚拟计算群提供低延时计算能力的系统及计算机实施的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |