本地装置协调器中的按需代码执行制造方法及图纸

技术编号:22570079 阅读:31 留言:0更新日期:2019-11-17 10:16
描述了用于实施被协调环境内的协调器的系统和方法,所述环境包括由所述协调器管理的一组被协调装置。可以为所述协调器调配一组任务,每个任务对应于可以由所述协调器执行诸如用于管理所述被协调装置的代码段。为了帮助执行所述任务,所述协调器可以包括资源管理器,所述资源管理器生成对应于单个任务执行的执行环境,所述环境可以与其他执行环境隔离。所述协调器还可以包括调度器以获得执行任务的调用,并且实施从中选择要执行的任务的队列。在选择任务时,所述调度器可以与所述资源管理器交互以为所述任务生成执行环境,并且使得在所述执行环境内执行所述任务。

On demand code execution in local device Coordinator

A system and method for implementing a coordinator within a coordinated environment including a set of coordinated devices managed by the coordinator are described. A set of tasks can be allocated for the coordinator, each corresponding to a code segment that can be executed by the coordinator, such as for managing the coordinated device. To help execute the task, the coordinator may include a resource manager that generates an execution environment corresponding to the execution of a single task, and the environment may be isolated from other execution environments. The coordinator may also include a scheduler to obtain a call to execute a task, and implement a queue from which to select a task to execute. When selecting a task, the scheduler can interact with the resource manager to generate an execution environment for the task and cause the task to be executed within the execution environment.

【技术实现步骤摘要】
【国外来华专利技术】本地装置协调器中的按需代码执行相关申请的交叉引用本申请涉及:2016年11月28日提交的且标题为“MANAGINGSECURITYINMESSAGINGPROTOCOLCOMMUNICATIONS”的美国专利申请No.15/362,751;2016年11月28日提交的且标题为“EMBEDDEDCODESINMESSAGINGPROTOCOLCOMMUNICATIONS”的美国专利申请No.15/362,757;和2016年11月28日提交的且标题为“MANAGINGMESSAGINGPROTOCOLCOMMUNICATIONS”的美国专利申请No.15/362,765(以下统称为“相关申请”)。每个相关申请的全部内容通过引用并入本文。
技术介绍
一般来说,计算装置利用一个通信网络或一系列通信网络交换数据。公司和组织操作互连许多计算装置以支持操作或向第三方提供服务的计算机网络。计算系统可以位于单个地理位置或位于多个不同的地理位置(例如,经由私有或公共通信网络互连)。具体而言,本文统称为“数据中心”的数据中心或数据处理中心可以包括许多互连的计算系统以向数据中心的用户提供计算资源。数据中心可以是代表组织运营的私有数据中心,或者可以是代表公众或出于公众利益运营的公共数据中心。为了促进数据中心资源的加大利用,虚拟化技术允许单个物理计算装置托管虚拟机的一个或多个实例,所述虚拟机作为独立计算装置向数据中心的用户展现并操作。利用虚拟化,单个物理计算装置可以以动态方式创建、维护、删除或以其他方式管理虚拟机。继而,用户可以从数据中心请求计算机资源,包括单个计算装置或联网计算装置的配置,并且可以被提供不同数量的虚拟机资源。在一些环境中,经由通信网络进行通信的计算装置可以对应于具有作为计算装置的主要功能的装置,诸如台式个人计算机。在其他环境中,经由通信网络通信的计算装置的至少某一部分可以对应于具有至少一个另选主要功能的嵌入装置或薄型装置,诸如具有单独主要目的同时还提供至少有限计算功能的家用电器(例如,恒温器或冰箱)。在一些情况下,这些嵌入装置或薄型装置的本地用户接口是有限的,并且因此可能需要远程管理来实现这些装置的一些功能。然而,在某些情况下,由于与远程管理装置的通信的延时以及在远程管理装置处或在与远程管理装置的通信期间私有信息可能被无意中泄露,远程管理可能存在问题。当嵌入装置或薄型装置和远程管理装置存在于单独的通信网络上或通过公共通信网络进行通信时,这些问题可能更普遍。附图说明在全部附图中,参考数字可被重复使用来指示所参考元素之间的对应关系。附图被提供来示出本文所描述的示例性实施方案,并且并不意图限制本公开的范围。图1是描绘说明性环境的框图,其中协调器可以操作以本地管理和协调被协调环境内的被协调装置的操作,并且其中协调器可以与客户端装置和服务提供商环境通信以修改协调器的操作;图2描绘了提供图1的协调器的计算装置的总体架构;图3A和图3B描绘了由图1的协调器管理的被协调装置的总体架构;图4描绘了可用于为图1的协调器生成和提交配置信息的客户端装置的总体架构;图5是描绘用于为图1的协调器注册注册服务提供商环境的管理和部署服务,以及用于经由装置影子服务向协调器通知从客户端装置获得的配置的说明性交互的流程图;图6是描绘用于利用管理和部署服务来为协调器调配配置的说明性交互的流程图,包括可由协调器执行以实现期望功能的按需代码执行环境的多个任务;图7是描绘用于经由协调器经由客户端装置修改被协调装置的配置的说明性交互的流程图,而不需要在被协调环境外部进行通信;图8是描绘用于在图1的协调器上管理工作项的队列诸如执行任务的调用的说明性交互的流程图;图9是描绘用于通过生成用于执行对任务的调用的执行环境并在执行环境中执行该任务来处理来自图8的队列的任务调用的说明性交互的流程图;图10描绘了可以由图1的协调器实施的说明性队列处理例程;图11描绘了可以由图1的协调器实施的说明性执行环境生成例程;图12是描绘使用通信管理器使得第一任务执行能够调用图1的协调器上的第二任务执行的说明性交互的流程图;图13是描绘使用通信管理器向图1的协调器上的第一任务执行的调用方提供第一任务执行的输出的说明性交互的流程图;图14描绘了可以由图1的协调器内的通信管理器实施的说明性跨任务通信例程;图15是描绘使用远程接口任务经由外部按需代码执行环境150上的第二任务执行调用图1的协调器上的第一任务执行的说明性交互的流程图;图16描绘了可以由在图1的协调器上执行的远程接口任务实施的说明性外部任务调用例程;具体实施方式一般来说,本公开的各方面涉及存在于被协调环境内的协调器,其用于控制被协调环境内的被协调装置的操作和功能。在一些情况下,被协调装置可以对应于具有至少一个另选主要功能的嵌入装置或薄型装置,诸如具有单独主要目的的家用电器。在一些情况下,这种装置可以称为“物联网”装置或“IoT”装置。被协调装置可以包括有限的本地用户接口能力,且因此可以受益于远程管理。本文公开的协调器使得能够在包括协调器和被协调装置的环境(诸如局域网或“LAN”环境)内本地对被协调装置进行这种远程管理。因此,协调器的使用可以实现对被协调装置的管理,而不需要在本地环境外部进行通信,从而与使用外部或公共通信网络相比,允许降低隐私风险并提高通信速度。具体而言,本公开的各方面涉及利用协调器作为本地按需代码执行系统,使得能够快速执行可移植代码段以在协调器上实现功能。这些可移植代码段在本文可称为“任务”。在一些情况下,可利用任务来协调被协调装置的功能,诸如通过改变装置的状态。例如,在被协调装置是启用网络的灯的情况下,任务可以用于根据对协调器的输入诸如当前时间、用户输入或另一个被协调装置的状态改变灯的状态(例如,变为“开”或“关”)。协调器还可以根据许多不同的协议启用通信协调的装置和任务,并且在一些情况下提供此类协议之间的转换功能。此外,在一些情况下,协调器可以管理任务的执行位置,使得根据候选装置的能力和执行任务的要求,可以在协调器上、在被协调装置上或在远程环境(例如,远程网络计算环境)的装置上执行任务。在一些情况下,这些任务可以是用户定义的,使得用户能够根据对应于任务的用户提交的代码在协调器或被协调装置上实施各种功能。因此,协调器可以提供被协调装置的快速可重新配置的本地管理。在一些情况中,协调器可以经由“装置影子”管理被协调装置的状态。一般来讲,装置影子可以对应于存储在远离被协调装置的位置(例如,协调器或远程装置影子服务)处的被协调装置的期望状态的数据表示。被协调装置可以被配置为与装置影子表示的状态同步,并且因此,可以预期对装置影子的改变引起被协调装置的状态的对应改变。在一些情况下,被协调装置和对应影子的同步可以经由“发布/订阅”模型通信协议诸如MQTT协议发生,该协议在本领域中是已知的。因此,被协调装置可以“订阅”用于该被协调装置的装置影子。然后,协调器可以经由“发布”到装置影子的本文档来自技高网...

【技术保护点】
1.一种用于管理协调器计算装置内的资源的系统,所述协调器计算装置被配置为管理被协调环境内的一个或多个被协调装置,所述系统包括:/n包括对应于以下项的计算机可执行指令的非暂时数据存储区:/n调度器,当被执行时,实施调用队列以在所述协调器上执行一个或多个任务,其中所述一个或多个任务的各个任务对应于所述协调器计算装置可执行以管理所述被协调环境内的所述一个或多个被协调装置的操作的代码;/n资源管理器,当被执行时,生成在其中执行所述一个或多个任务的执行环境;/n处理器,其与所述非暂时数据存储区通信并且被配置为执行所述调度器,其中所述调度器的执行使得所述处理器:/n将一组任务调用排队到所述队列内,各个任务调用对应于执行所述一个或多个任务的任务的调用;/n从所述资源管理器获得所述协调器上的计算资源的可用性;/n至少部分地基于计算资源的所述可用性将调度算法应用于所述队列,以选择所述一组任务调用的至少一个任务调用以进行处理;/n指示所述资源管理器选择在其中执行对应于所述至少一个任务调用的任务的执行环境;并且/n在所述执行环境内执行对应于所述至少一个任务调用的所述任务;/n其中所述处理器被进一步配置为执行所述资源管理器,以便生成在其中执行对应于所述至少一个任务调用的所述任务的所述执行环境,并且其中所述执行环境的生成包括为所述执行环境调配执行对应于所述至少一个任务调用的所述任务所需的数据资源。/n...

【技术特征摘要】
【国外来华专利技术】20161128 US 15/362,707;20161128 US 15/362,696;20161.一种用于管理协调器计算装置内的资源的系统,所述协调器计算装置被配置为管理被协调环境内的一个或多个被协调装置,所述系统包括:
包括对应于以下项的计算机可执行指令的非暂时数据存储区:
调度器,当被执行时,实施调用队列以在所述协调器上执行一个或多个任务,其中所述一个或多个任务的各个任务对应于所述协调器计算装置可执行以管理所述被协调环境内的所述一个或多个被协调装置的操作的代码;
资源管理器,当被执行时,生成在其中执行所述一个或多个任务的执行环境;
处理器,其与所述非暂时数据存储区通信并且被配置为执行所述调度器,其中所述调度器的执行使得所述处理器:
将一组任务调用排队到所述队列内,各个任务调用对应于执行所述一个或多个任务的任务的调用;
从所述资源管理器获得所述协调器上的计算资源的可用性;
至少部分地基于计算资源的所述可用性将调度算法应用于所述队列,以选择所述一组任务调用的至少一个任务调用以进行处理;
指示所述资源管理器选择在其中执行对应于所述至少一个任务调用的任务的执行环境;并且
在所述执行环境内执行对应于所述至少一个任务调用的所述任务;
其中所述处理器被进一步配置为执行所述资源管理器,以便生成在其中执行对应于所述至少一个任务调用的所述任务的所述执行环境,并且其中所述执行环境的生成包括为所述执行环境调配执行对应于所述至少一个任务调用的所述任务所需的数据资源。


2.如权利要求1所述的系统,其中所述被协调装置包括通用计算装置、薄型装置或与另选主要功能相关联的嵌入装置中的至少一个。


3.如权利要求1所述的系统,其中为所述执行环境调配执行对应于所述至少一个任务调用的所述任务所需的数据资源包括为所述执行环境调配对应于所述任务的所述可执行代码。


4.如权利要求1所述的系统,其中为所述执行环境调配执行对应于所述至少一个任务调用的所述任务所需的数据资源包括为所述执行环境调配驱动器、代码库、对应于运行时环境的数据或代码实用程序中的至少一个。


5.如权利要求1所述的系统,其中所述执行环境对应于软件容器。


6.如权利要求4所述的系统,其中所述数据资源存储在所述软件容器外部,并且其中为所述执行环境调配执行对应于所述至少一个任务调用的所述任务所需的数据资源包括将所述软件容器与对所述数据资源的只读访问相关联。


7.如权利要求6...

【专利技术属性】
技术研发人员:郭裕仁鲁德雷施·阿明陈彦霖乔纳森·I·图罗潘诚马克·约翰·布鲁克詹姆斯·克里斯托夫·索伦森三世W·Z·麦克莱纳恩
申请(专利权)人:亚马逊技术有限公司
类型:发明
国别省市:美国;US

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

1