【技术实现步骤摘要】
线程化作为服务本申请是申请号为201580053106.0、申请日为2015年9月29日、专利技术名称为“线程化作为服务”的专利申请的分案申请。对同时提交申请的交叉引用本申请的申请人在2014年9月30日同时提交以下美国专利申请:以上引用的申请的公开内容通过引用整体并入本文。背景一般来说,计算装置利用通信网络或一系列通信网络进行数据交换。公司和组织操作互连许多计算装置来支持操作或者向第三方提供服务的计算机网络。计算系统可位于单一地理位置或者位于多个不同地理位置中(例如,经由私有或公共通信网络互连)。确切地,数据中心或数据处理中心(在本文中总体称之为“数据中心”)可包括多个互连的计算系统以向数据中心的用户提供计算资源。数据中心可以是代表某一组织操作的私有数据中心或代表公众或者为了公众的利益操作的公共数据中心。为了促进数据中心资源的加大利用,虚拟化技术可允许单个物理计算装置托管虚拟机的一个或多个实例,所述虚拟机作为独立计算装置向数据中心的用户展现并操作。利用虚拟化,单个物理计算装置可按照动态方式创建、维护、删除或以其他方式管理虚拟机。进而,用户可从数据中心请求计算机资源,包括单一计算装置或联网计算装置配置,并且可提供用户不同数目的虚拟机资源。在一些场景中,虚拟机实例可根据多个虚拟机实例类型进行配置以提供特定功能性。例如,各种计算装置可与操作系统或操作系统配置、虚拟化硬件资源和软件应用的不同组合相关联,以使得计算装置能够提供不同的所希望的功能性,或者更有效地提供类似功能性。这些虚拟机实例类型配 ...
【技术保护点】
1.一种用于处理在一个或多个虚拟机实例上执行用户代码的请求的计算机实现的方法,所述方法包括:/n当由被配置有特定计算机可执行指令的一个或多个计算装置实现时,/n提供多个预热的虚拟机实例,所述预热的虚拟机实例中的每一个都未分配给特定用户并且包含与编程语言相关联的软件部件;/n在提供所述多个预热的未分配虚拟机实例之后,接收执行用户代码的请求,所述请求包括与执行所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;/n基于所述请求的所述配置信息来从所述多个预热的虚拟机实例中识别虚拟机实例,其中所述识别的虚拟机实例包含适于执行所述用户代码的特定软件部件;/n将所述识别的虚拟机实例与和所述请求相关联的用户账户相关联;/n在所述相关联的虚拟机实例内创建用于执行所述用户代码的容器;/n将所述特定软件部件和所述用户代码加载到所述容器中;以及/n开始由所述容器执行所述用户代码,其中所述开始在第二时间发生,以及/n其中从所述第一时间到所述第二时间的时间段小于预定持续时间。/n
【技术特征摘要】
20140930 US 14/502,9921.一种用于处理在一个或多个虚拟机实例上执行用户代码的请求的计算机实现的方法,所述方法包括:
当由被配置有特定计算机可执行指令的一个或多个计算装置实现时,
提供多个预热的虚拟机实例,所述预热的虚拟机实例中的每一个都未分配给特定用户并且包含与编程语言相关联的软件部件;
在提供所述多个预热的未分配虚拟机实例之后,接收执行用户代码的请求,所述请求包括与执行所述用户代码相关联的配置信息,其中所述请求在第一时间被接收;
基于所述请求的所述配置信息来从所述多个预热的虚拟机实例中识别虚拟机实例,其中所述识别的虚拟机实例包含适于执行所述用户代码的特定软件部件;
将所述识别的虚拟机实例与和所述请求相关联的用户账户相关联;
在所述相关联的虚拟机实例内创建用于执行所述用户代码的容器;
将所述特定软件部件和所述用户代码加载到所述容器中;以及
开始由所述容器执行所述用户代码,其中所述开始在第二时间发生,以及
其中从所述第一时间到所述第二时间的时间段小于预定持续时间。
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所述的系统,其中所述特定指令还将所述系统配置...
【专利技术属性】
技术研发人员:蒂莫西·艾伦·瓦格纳,
申请(专利权)人:亚马逊技术有限公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。