CN110832461A - 用于提供函数即服务(faas)的系统及该系统的操作方法 - Google Patents
用于提供函数即服务(faas)的系统及该系统的操作方法 Download PDFInfo
- Publication number
- CN110832461A CN110832461A CN201880044317.1A CN201880044317A CN110832461A CN 110832461 A CN110832461 A CN 110832461A CN 201880044317 A CN201880044317 A CN 201880044317A CN 110832461 A CN110832461 A CN 110832461A
- Authority
- CN
- China
- Prior art keywords
- function
- execution
- information
- execute
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 18
- 230000006870 function Effects 0.000 claims abstract description 415
- 230000015654 memory Effects 0.000 claims abstract description 36
- 238000012360 testing method Methods 0.000 claims description 10
- 238000011017 operating method Methods 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 2
- 230000002123 temporal effect Effects 0.000 claims 2
- 238000004364 calculation method Methods 0.000 description 16
- 230000004044 response Effects 0.000 description 13
- 238000004590 computer program Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 238000009434 installation Methods 0.000 description 5
- 230000000306 recurrent effect Effects 0.000 description 4
- 238000013475 authorization Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
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/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
- G06F9/505—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 considering the load
-
- 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
- G06F9/5055—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 considering software capabilities, i.e. software resources associated or available to the machine
-
- 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/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5019—Workload prediction
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
提供了一种用于提供函数即服务(FaaS)的系统。所述系统包括通信器、存储器和处理器,其中所述通信器接收设定资源以执行所述函数的请求,所述存储器存储一个或多个指令。所述处理器执行存储的指令。当所述处理器执行所述指令时,它分析所述函数的特性并基于所述分析的结果提供与所述资源的设定相关的建议信息来执行所述函数。
Description
技术领域
本公开涉及用于提供函数即服务(FAAS)的系统及操作该系统的方法,更具体地,涉及能够在执行FaaS时有效地使用资源的系统及操作该系统的方法。
背景技术
在函数即服务(FaaS)平台上,提供了例如应用开发所需的程序、网络或存储装置等完整架构,因此开发人员不需要另外设立计算机服务器(虚拟服务器、web服务器等),也不需要添加或管理例如操作系统(OS)或存储器的资源。另外,因为源代码以函数为单位被提供,所以开发人员可以搜索需要的函数并使用该函数。也就是说,开发人员仅需要访问FaaS并使用服务函数(serviced function)编写程序代码。在这方面,FaaS也被称为无服务器计算。在FaaS中,服务函数的大小有限,并且为了更高的响应速度预先生成了公共容器。然而,无法为每个请求的函数确保一致的响应速度,因此会产生延迟时间,并且可能会不必要地浪费资源。
上面的信息仅作为背景信息给出以帮助理解本公开。关于上述任何内容是否可作为本公开的现有技术,未做出任何确定且未进行任何断言。
发明内容
技术问题
在FaaS中,服务函数的大小有限,并且为了更高的响应速度预先生成了公共容器。然而,无法为每个请求的函数确保一致的响应速度,因此会产生延迟时间,并且可能会不必要地浪费资源。
技术方案
根据本公开的一个方面,提供了基于函数的特性和函数的执行信息中的至少一个为函数分配优化的资源的系统,还提供了所述系统的操作方法。
有益效果
根据实施方式的系统,对函数的执行请求的响应时间、函数的执行时间等可以很快。
根据实施方式的系统,用于执行函数的资源可以被有效地使用。
附图说明
本公开的某些实施方式的上述和其它方面、特征和优点将根据下面结合附图的描述变得明显,在附图中:
图1是示出根据实施方式的提供函数即服务(FaaS)的系统的配置的框图;
图2是示出根据实施方式的系统的详细配置的框图;
图3是示出根据实施方式的系统的配置的框图;
图4是示出根据实施方式的系统的操作的视图;
图5是示出根据实施方式的系统的操作的视图;
图6是示出根据实施方式的系统的操作的视图;
图7是示出根据实施方式的系统中提供的用户界面屏幕的视图;
图8是示出根据实施方式的系统的操作方法的流程图;
图9是示出根据实施方式的系统的操作方法的流程图;以及
图10是示出根据实施方式的系统的操作方法的流程图。
具体实施方式
根据本公开的一个方面,提供了用于基于函数的特性和函数的执行信息中的至少一个为函数分配优化的资源的系统,还提供了所述系统的操作方法。
附加方面部分地在下面的描述中阐述,并且部分地根据下面的描述显而易见,或者可以通过所给出的实施方式的实践而学习到。
根据本公开的一个方面,一种用于提供函数即服务(FaaS)的系统包括:通信器,被配置为接收用于设定资源以执行函数的请求;存储器,存储一个或多个指令;以及处理器,被配置为执行存储在存储器中的一个或多个指令。处理器还被配置为执行一个或多个指令以分析函数的特性并基于分析结果提供与资源设定相关的建议信息。
处理器还可以被配置为执行一个或多个指令以基于函数的测试日志信息、函数的代码大小、在函数执行期间是否需要外部库和函数中是否包含其它函数的至少一个来确定函数的计算量,并基于函数的计算量提供建议信息。
处理器还可以被配置为执行一个或多个指令以分析函数的执行信息并且基于分析结果提供建议信息。
函数的执行信息可以包括函数的执行请求的时间点、函数的执行请求的次数和函数的执行请求的频率中的至少一个。处理器还被配置为执行一个或多个指令以监视函数的执行请求的时间点来确定与做出预设次数或更多次数的函数的执行请求的时间有关的时间信息,并基于与时间信息对应的、函数的执行请求的次数提供建议信息。
通信器还可以被配置为接收函数的执行请求,处理器还可以被配置为执行一个或多个指令以分析函数的特性和函数的执行信息中的至少一个,基于分析结果分配资源来执行函数,并响应于执行请求使用分配的资源执行函数。
处理器还可以被配置为执行一个或多个指令以基于第一函数的特性和第一函数的执行信息中的至少一个生成与第一函数对应的第一容器,并基于第二函数的特性和第二函数的执行信息中的至少一个生成与第二函数对应的第二容器。当执行请求第一函数时使用第一容器执行第一函数,当执行请求第二函数时使用第二容器执行第二函数。
处理器还可以被配置为执行一个或多个指令以监视函数的执行请求的时间点来确定与做出预设次数或更多次数的函数的执行请求的时间有关的时间信息,并基于确定的时间信息分配用于执行函数的资源。
处理器还可以被配置为执行一个或多个指令以在与时间信息对应的时间点之前生成用来执行函数的调用器和容器。
处理器还可以被配置为执行一个或多个指令以基于与时间信息对应的、函数的执行请求的次数来确定用于执行函数的资源量。
分配的资源可以包括容器,执行函数所需的外部库预先下载到容器中。
处理器还可以被配置为执行一个或多个指令以基于函数的特性信息确定函数的计算量,并当函数的计算量小于预设的计算量时为函数分配N个容器和当函数的计算量等于或大于预设的计算量是为函数分配比N个容器多的M个容器。
根据本公开的另一方面,一种提供函数即服务(FaaS)的系统的操作方法包括:接收对执行函数的资源的设定请求;分析函数的特性;以及基于分析结果提供与资源的设定相关的建议信息。
根据本公开的另一方面,一种计算机程序产品包括至少一个计算机可读记录介质,其存储程序。程序在计算装置上执行时使计算装置:接收对执行函数即服务(FaaS)的资源的设定请求;分析函数的特性;以及基于分析结果提供与资源的设定相关的建议信息。
实施方式
现在详细参考实施方式,这些实施方式的示例在附图中示出,附图中相似的参考标号表示相似的元件。在这方面,实施方式可以具有不同的形式,并且不应该被解释为受限于本文中阐述的描述。由此,实施方式仅通过参考附图在下面描述以解释各个方面。例如“至少一个”的表达在位于一列元件之前时用于修饰整列元件、而不是不修饰列表中的单个元件。
下文简要描述说明书中使用的术语,然后详细描述本公开。
本说明书中使用的术语是在关于本公开的函数相关的领域中当前广泛使用的通用术语,但是这些术语可以根据本领域普通技术人员的意图、先例、或本领域中的新技术而改变。而且,申请人可以选择具体的术语,在这种情况下,术语的详细含义将在本公开的详细描述中进行描述。因此,说明书中使用的术语不应该理解为简单的名称,而是应该基于术语的含义和本公开的完整描述来进行理解。
在整个说明书中,还将要理解,当部件“包括”一个元件时,除非另有相反的描述,否则应该理解为该部件并不排除另一元件,而是还可以包括另一元件。另外,例如“......单元”、“......模块”等的术语指执行至少一个函数或操作的单元,并且这些单元可以被实现为硬件或软件或硬件和软件的组合。
下文参考附图更完整地描述本公开,在附图中示出了本公开的实施方式。然而,本公开可以以许多不同的形式实施并且不应该被解释为受限于本文所阐述的实施方式,而是,这些实施方式被提供使得本公开透彻完整,并将本公开的范围完整地传达给本领域普通技术人员。在附图中相似的参考标号指相似的元件。
在整个说明书中,“用户”可以指对系统、函数或操作进行控制的人,例如可以是开发人员、管理员或安装工程师。
图1是示出根据实施方式的提供函数即服务(FaaS)的系统100的配置的框图。
根据实施方式,系统100是提供无服务器云计算服务的系统,其可以提供执行代码以对事件作出响应的云计算方法。这里,术语“无服务器”表示对相应的事件无另外分配的服务器,从而用户不必控制架构或平台。根据实施方式,系统100可以在事件发生时提供函数即服务(FaaS)用于执行以函数为单位的代码。
参考图1,根据实施方式,系统100可以包括web服务器25、控制器31、负载平衡器32、调度器33、池管理器34、数据库45、调用器51和容器53。
web服务器25作为根据实施方式的系统100的前端操作,并为外部装置10的用户提供网站。例如,当用户请求服务时,web服务器25通过网络提供以HTML编写的网页。web服务器25可以是Nginx web服务器或Apache web服务器等,但是不限于此。
根据实施方式,web服务器25可以从外部装置10接收各种形式的函数(FaaS)的执行请求。
web服务器25可以将从外部装置10接收的函数的执行请求传送到控制器31,从控制器31接收函数的执行结果并将结果发送给外部装置10。
根据实施方式,外部装置10可以使用例如移动电话、平板电脑、数字照相机、摄录机、膝上型计算机、台式计算机、电子书终端、数字广播终端、个人数字助理(PDA)、便携式多媒体播放器(PMP)、导航装置、MP3播放器、物联网(IoT)装置、可穿戴装置、消费性电子(CE)装置(例如,具有显示面板的冰箱、空调等)的各种电子装置实现,但是不限于此。
根据实施方式,控制器31通过使用数据库45来确定从外部装置10接收的请求是否包含授权,当确认授权时,控制器31可以将请求传送到负载平衡器32。这里,请求或数据等在控制器31与负载平衡器32之间传送可以通过消息序列实现,但是不限于此。
负载平衡器32可以将与请求对应的作业分配给多个调用器中最适合该请求的调用器51。这里,请求或数据等在负载平衡器32与调用器51之间的传送可以通过消息序列实现,但是不限于此。
调用器51可以从数据库45获取由负载平衡器32分配的作业所需的信息,并控制容器53使得容器53执行该作业。例如,调用器51可以从数据库45获取与请求执行的函数对应的代码并将该代码传送至容器53,容器53可以执行从调用器51接收的代码。
下面参考图2详细描述调度器33和池管理器34。
同时,数据库45可以存储例如用于执行在根据实施方式的系统100中登记的函数的授权信息、与在系统100中登记的函数对应的代码、以及执行函数所需的数据、文件和库。
根据实施方式,系统100的元件可以被分类成前端层20、调度层30、作业层50和存储层40,但是这是示例并且元件不限于此。
图2是示出根据实施方式的系统100的配置的框图。
参考图2,根据实施方式,系统100可以包括数据库45、负载平衡器32、调度器33、池管理器34和池生成器37。
调度器33可以监视由负载平衡器32接收的请求。例如,当图1的控制器31与负载平衡器32之间包含消息序列时,调度器33可以监视存储在消息序列中的请求。然而,调度器33不限于此。调度器33可以监视函数的执行信息,并可以监视例如接收到函数的执行请求的时间点、请求函数的执行请求的次数、函数的执行请求的频率。另外,调度器33可以根据月、星期几、时区、或周年统计函数执行请求的次数。调度器33可以监视每个函数的执行信息,分析监视到的信息,并将信息存储到数据库45中。
例如,调度器33可以为每个函数确定时间信息(即,与预设次数或更多次数的函数执行请求的时间有关的信息),并将确定的时间信息存储到数据库45中。另外,调度器33可以响应于在与时间信息对应的时间处接收的多次执行请求和在与时间信息对应的时间处接收的一次执行请求确定执行函数所需的资源量,并将确定的资源量存储到数据库45中,但是不限于此。
同时,调度器33可以基于预测模型为每个函数确定函数的执行请求的时间点或在该时间点处的执行请求的次数。预测模型可以通过使用函数的执行信息训练得到。另外,调度器33可以基于预测模型为每个函数预测作业负载、响应时间、函数执行时间、执行函数所需的存储器大小等。预测模型可以通过使用函数的特性训练得到。预测模型可以是例如深度神经网络(DNN)、循环神经网络(RNN)、双向循环深度神经网络(BRDNN)的基于神经网络的模型,但是不限于此。
同时,数据库45可以存储分析函数特性的结果。例如,系统100可以分析函数的测试日志信息、函数的代码大小、函数执行期间是否需要外部库、函数中是否包含其它函数等,并可以基于分析结果确定执行函数的资源量并将该资源量存储到数据库45中。
池管理器34可以从数据库45获取与函数对应的池配置信息,并控制池生成器37使得池生成器37基于池配置信息生成池。例如,当每年1月1日0:00函数A的执行请求的次数等于或大于预设次数时,池管理器34可以请求池生成器37在每年1月1日0:00之前生成用来执行函数的第一容器和第一调用器。由此,池生成器37可以在每年1月1日0:00之前生成用来执行函数A的第一容器73和第一调用器71。
图1和图2的web服务器25、控制器31、负载平衡器32、调度器33、池管理器34、数据库45、调用器51和容器53中的至少一个可以以硬件形式制造并安装在一个设备中或可以分别安装在不同的设备中。另外,web服务器25、控制器31、负载平衡器32、调度器33、池管理器34、数据库45、调用器51和容器53中的至少一个可以被实现为软件模块。当web服务器25、控制器31、负载平衡器32、调度器33、池管理器34、数据库45、调用器51和容器53中的至少一个被实现为软件模块(或包含指令的程序模块)时,软件模块可以存储在计算机可读的非暂时性计算机可读介质中。此外,在这种情况下,至少一个软件模块可以由操作系统(OS)或预定应用提供。替代地,至少一个软件模块的一部分可以由OS提供,软件模块的其它部分可以由预定应用提供。
图3是示出根据实施方式的系统200的框图。
根据实施方式,系统200可以包括通信器210、处理器220和存储器230。
根据实施方式,处理器220可以控制整个系统200。根据实施方式,处理器200可以执行存储在存储器230中的一个或多个程序。
根据实施方式,存储器230可以存储用来驱动和控制系统200的各种数据、程序或应用。存储在存储器230中的程序可以包括一个或多个指令。存储在存储器230中的程序(一个或多个指令)或应用可以由处理器220执行。另外,处理器220可以包括参考图1和图2显示和描述的数据库45,但是不限于此。
根据实施方式,处理器220可以执行由参考图1和图2显示和描述的控制器31、负载平衡器32、调度器33、池管理器34、调用器51和容器53执行的操作中的至少一个。
例如,处理器220可以分析函数的执行信息和函数的特性中的至少一个。处理器220可以监视函数的执行请求的时间点、函数的执行请求的次数和函数的执行请求的频率以分析函数的执行信息。另外,通过使用分析函数的执行信息的结果,处理器220可以提供与具体时间或星期几的资源设定相关的建议信息(与存储器规格或中央处理单元(CPU)规格相关的建议信息)。
替代地,处理器220可以分析函数的测试日志信息、函数的代码大小、函数执行期间是否需要外部库、函数中是否包含其它函数等。另外,基于函数的测试日志信息、函数的代码大小、函数执行期间是否需要外部库和函数中是否包含其它函数中的至少一个,处理器220可以确定函数的计算量。处理器220可以基于确定的函数计算量提供与关于函数的存储器规格或CPU规格相关的建议信息。
处理器220可以分析函数的执行信息以确定与多于预设次数请求函数的时间有关的时间信息,并在与确定的时间信息对应的时间点之前生成和分配用于执行函数的资源。例如,处理器220可以生成在具体的时间点来执行函数A的第一调用器和第一容器,并且可以在第一容器中包括或安装执行函数A所需的数据、文件、库等。另外,处理器220可以基于函数A的执行请求的次数确定第一调用器的数量和第一容器的数量。
另外,通过分析函数的特性信息,处理器220可以确定函数的计算量,并确定基于确定的计算量分配的资源量。例如,通过分析函数A的特性,处理器220可以确定函数A的计算量,当确定的函数A的计算量等于或大于预设的计算量时,处理器220可以为函数A分配较大量的资源。
同时,处理器220可以基于预测模型为每个函数预测执行请求的时间点或该时间点处的执行请求的次数。预测模型可以通过使用与函数相关的执行信息训练得到。另外,处理器220可以基于预测模型为每个函数预测作业负载、响应时间、函数执行时间、函数执行所需的存储器大小等。预测模型可以通过使用函数的特性训练得到。预测模型可以是例如深度神经网络(DNN)、循环神经网络(RNN)、双向循环深度神经网络(BRDNN)的基于神经网络的模型,但是不限于此。
另外,处理器220可以响应于函数的执行请求通过使用分配给函数的资源来执行函数。例如,当预先生成了用于执行函数A的第一容器和第一调用器时,处理器220可以通过使用生成的第一调用器和生成的第一容器无时延地快速执行函数A。
通信器210可以根据处理器220的控制将数据或信号发送给外部装置或外部服务器,或者从外部装置或外部服务器接收数据或信号。根据实施方式,通信器210可以执行参考图1显示和描述的web服务器25的操作。例如,通信器210可以通过网络从外部装置或外部服务器接收函数的执行请求。
通信器210可以包括允许通过局域网(LAN)、广域网(WAN)、增值网络(VAN)、移动无线电通信网络、卫星通信网络或它们的组合通信的至少一个部件。另外,通信器210可以立即通过无线LAN(例如,Wi-Fi)以无线方式将数据或信号发送给外部装置或外部服务器或者从外部装置或外部服务器接收数据或信号。通信器210可以是硬件和软件的组合,例如网卡。
同时,图1至图3中所示的系统100或200的框图是根据实施方式的框图。框图中的元件可以根据实现的系统100或200的规范被集成、添加或省略。也就是说,根据需要,两个或更多个部件可以被集成到单个部件中,或者单个部件可以被划分成两个或更多个部件。另外,在各个块中执行的函数是用于描述实施方式的目的,具体的操作或装置不限制本公开的范围。
图4是示出根据实施方式的系统100或200的操作。
根据实施方式,系统100或200可以监视函数的执行信息。例如,系统100或200可以监视接收到函数的执行请求的时间点、请求函数的执行请求的次数、函数的执行请求的频率。另外,系统100或200可以根据月份、星期几、时区、或周年统计函数的执行请求的次数。
同时,系统100或200可以基于预测模型为每个函数预测执行请求的时间点或在时间点处的执行请求的次数。预测模型可以通过函数的执行信息训练得到。
由此,系统100或200可以确定与预设次数或更多次数的函数执行请求的时间有关的时间信息,并在与确定的时间信息对应的时间点之前生成和分配用于执行函数的资源。
例如,当在每年的1月1日0:00函数A的执行请求的次数等于或大于预设次数时,系统100或200可以在每年的1月1日0:00之前生成用来执行函数A的第一容器412和第一调用器411。另外,系统100或200可以通过考虑与确定的时间信息(例如,每年1月1日0:00)对应的函数A的执行请求的次数来确定待被另外生成的多个第一容器412和多个第一调用器411。这里,在第一容器412中可以包括或安装执行函数A所需的数据、文件、库等。例如,当需要外部库来执行函数A时,可以在与确定的时间信息对应的时间点之前预先将外部库下载到第一容器412中。另外,当库被一起压缩到用于执行函数的文件中或包括安装文件时,可以将压缩解压或者可以执行安装文件以在与确定的时间信息对应的时间点之前预先安装库。
由此,当从第一装置11接收到函数A的执行请求时,系统100或200可以通过使用预先生成的第一容器412和第一调用器411无时延地快速执行函数A。第一调用器411可以控制第一容器412从而使用第一容器412来执行函数A。例如,第一调用器411可以将与函数A对应的代码传送至第一容器412,并且第一容器412可以执行与函数A对应的代码。
当在每天9:00A.M函数B的执行请求的次数等于或大于预设次数时,系统100或200可以在每天9:00A.M之前另外生成用来执行函数B的第二容器422和第二调度器421。由此,池生成器37可以在每天9:00A.M之前生成用来执行函数B的第二容器422和第二调用器421。系统100或200可以通过考虑与确定的时间信息(例如,每天9:00A.M)对应的函数B的执行请求的次数来确定待被另外生成的多个第二容器422和多个第二调用器421。这里,在第二容器422中可以包括或安装执行函数所需的数据、文件、库等。
由此,当从第二装置12接收到函数B的执行请求时,系统100或200可以通过使用预先(在执行请求之前)生成的第二容器422和第二调用器421无时延地快速执行函数B。第二调用器421可以控制第二容器422从而使用第二容器422来执行函数B。
图5是示出根据实施方式的系统100或200的操作的视图。
根据实施方式,系统100或200可以分析函数的特性。例如,系统100或200可以分析函数的测试日志信息、函数的代码大小、函数执行期间是否需要外部库、函数中是否包含其它函数等以确定函数的计算量。系统100或200可以基于确定的函数计算量确定分配给函数的资源量。
当函数A的计算量小于预设的计算量时,系统100或200可以向函数A分配典型的资源,当函数B的计算量等于或大于预设的计算量时,可以为函数B分配比为函数A分配的资源更多的资源。例如,当确定函数的计算量小于预设的计算量时,系统100或200可以为函数A分配N个容器。由此,当从第一装置11接收到函数A的执行请求时,系统100或200可以使用分配给函数A的N个容器来执行函数A。
另一方面,当确定函数B的计算量大于预设的计算量时,系统100或200可以为函数B分配比N个更多的M个容器。由此,当从第二装置12接收到函数B的执行请求时,系统100或200可以使用分配给函数B的M个容器来执行函数B。
预设的计算量可以包括多个值,系统100或200可以为包括函数的计算量的段分配不同的资源。由此,函数的执行速度可以增大,并且系统的资源可以被有效地管理。
图6是示出根据实施方式的系统100或200的操作的视图。
系统100或200可以确定函数执行期间是否需要外部库,当需要外部库时,系统100或200可以预先(在执行请求之前)下载外部库。例如,当库被一起压缩到用于执行函数C的文件中或包括外部库安装文件时,可以预先将压缩解压或者执行安装文件以在分配给函数C的容器615中安装库。这里,系统100或200可以预测请求执行函数C的时间点,并可以在预测的时间点之前预先下载外部库。
当容器中预先下载或安装有执行函数所需的库时,与下载库之后再执行函数相比,系统100或200可以对函数的执行请求具有较短的响应时间。
图7是示出根据实施方式的在系统100或200中提供的用户界面(UI)屏幕700的视图。
参考图7,根据实施方式,系统100或200可以为每个函数设定存储器和CPU的规格,并可以提供用户界面(UI)屏幕700,其中存储器和CPU的规格可以根据每个函数和每个时间点经由用户界面(UI)屏幕700被设定。
例如,用户界面(UI)屏幕700可以包括针对具体函数设定存储器或CPU的规格的条目、针对具体函数选择自动预测功能的条目、针对具体函数根据具体时间点设定存储器或CPU的规格的条目。
图7示出了选择函数A和设定与函数A对应的资源的示例。用户可以通过使用第一条目710针对具体函数A设定存储器规格,并通过使用第二条目720为函数A设定CPU规格。
例如,当设定存储器规格为128MB、设定CPU规格为200MHz且接收到函数A的执行请求时,可以使用128MB存储器和200MHz CPU来执行函数A。
同时,系统100或200可以分析函数A的特性,并提供与执行函数A的资源设定相关的建议信息。
例如,系统100或200可以基于函数A的测试日志信息、函数A的代码大小、函数A执行期间是否需要外部库和函数A中是否包含其它函数来确定函数A的计算量。系统100或200可以基于确定的函数计算量提供与函数A的存储器规格或CPU规格相关的建议信息715和725,如图7所示。
另外,通过使用第三条目730,用户可以选择是否针对函数A应用自动预测功能。例如,当对函数A应用自动预测功能时,系统100或200可以通过监视函数A的执行信息(例如,函数A的执行请求的时间点、请求执行函数A的次数、函数A的执行请求的频率等)预测与函数A的执行相关的时间点,并可以在预测的时间点之前分配优化的资源用于执行函数A。另外,通过使用第四条目740和第五条目750,用户可以针对函数A设定与具体日期和具体时间对应的存储器规格和/或CPU规格。例如,当设定日期为2018年7月4日、设定时间为21:30至23:40、设定存储器规格为128MB、设定CPU规格为400MHz且在2018年7月4日21:30与23:40之间接收到函数A的执行请求时,使用128MB存储器和400MHz CPU来执行函数A。
另外,通过使用第六条目760,用户可以针对函数A设定与根据星期几的具体时间对应的存储器规格和CPU规格。例如,当设定星期几为星期一时,设定时间为9:30至10:40,设定存储器规格为256MB,并设定CPU规格为400MHz且在星期一9:30与10:40之间接收到函数A的执行请求时,使用256MB存储器和400MHz CPU来执行函数A。
同时,系统100或200可以基于分析函数A的执行信息(例如,函数A的执行请求的时间点、请求执行函数A的次数、函数A的执行请求的频率等)的结果根据星期几向用户提供与资源设定相关的建议信息。例如,当选择图7中示出的建议信息图标765时,系统100或200可以根据星期几提供与函数A的存储器规格或CPU规格相关的建议信息,或者根据星期几为函数A建议的存储器规范或建议的CPU规范可以被自动输入到第六条目760。然而,本公开不限于此。
而且,当外部库等作为压缩文件包括在函数中时,用户可以通过使用第七条目770设定在执行函数之前预先解压还是将外部库下载到函数待被执行的容器中。
另外,通过使用第八条目780,用户可以根据函数的特性确定计算量,并基于确定的计算量设定是否分配优化的资源(例如,确定资源量)。
图8是示出根据实施方式的系统100或200的操作方法的流程图。
参考图8,系统100或200可以分析函数的特性和函数的执行信息中的至少一个(在操作S810中)。
例如,系统100或200可以分析函数的测试日志信息、函数的代码大小、函数执行期间是否需要外部库、函数中是否包含其它函数等。替代地,系统100或200可以分析函数的执行请求的时间点、请求执行函数的次数、函数的执行请求的频率等。这将在下面参考图9进行更详细的描述。
系统100或200可以基于分析结果分配用于执行函数的资源(在操作S820中)。
例如,系统100或200可以通过分析函数A的特性确定函数A的计算量,当确定的函数A的计算量等于或大于预设的计算量时,系统100或200可以为函数A分配相对大量的资源。替代地,当函数A执行期间需要外部库时,系统100或200可以分配用于执行函数A的容器,并预先将外部库下载到分配给函数A的容器中。
替代地,系统100或200可以通过分析函数A的执行信息来预测函数A的执行请求的时间点和对函数A的请求次数,并可以根据预测的时间点和预测的次数来分配用于执行函数A的资源。这将在下面参考图9进行更详细的描述。
在接收到函数的执行请求(在操作S830中)后,系统100或200可以通过使用在操作S820中分配的资源执行函数(在操作S840中)。
例如,在操作S820中,当生成了用于执行函数A的第一容器和第一调度器且接收到函数A的执行请求时,系统100或200可以使用第一调用器和第一容器无时延地快速执行函数A。
图9是示出根据实施方式的系统100或200的操作方法的流程图。
参考图9,系统100或200可以监视函数的执行信息(在操作S910中)。
例如,系统100或200可以监视接收到函数的执行请求的时间点、请求执行函数的次数、函数的执行请求的频率等。另外,系统100或200可以根据月份、星期几、时区或周年统计函数的执行请求的次数,监视每个函数的执行信息,分析监视的信息并将其存储到数据库中。
系统100或200可以基于在操作S910中监视到的信息确定与预设次数或更多次数的函数执行请求的时间有关的时间信息(在操作S920中)。
例如,当在每年1月1日0:00函数A的执行请求的次数等于或大于预设次数时,系统100或200可以将每年1月1日0:00确定为时间信息。替代地,当在每天9:00A.M函数B的执行请求的次数等于或大于预设次数时,系统100或200可以将每天9:00A.M确定为时间信息。然而,本公开不限于此。
系统100或200可以在与在操作S920中确定的时间信息对应的时间点之前生成用于执行函数的容器(在操作S930中)。
例如,系统100或200可以在每年1月1日0:00之前生成用来执行函数A的第一容器和第一调用器。例如,可以在第一容器中包括或安装执行函数所需的数据、文件或库等。系统100或200可以基于在操作S910中监视到的函数A的执行请求的次数而确定第一调用器的数量和第一容器的数量。
另外,系统100或200可以在每天9:00A.M之前生成用来执行函数B的第二调用器和第二容器,并可以基于函数B的执行请求的次数确定第二调用器的数量和第二容器的数量。
在接收到函数的执行请求后,系统100或200可以使用预先在操作S930中生成的容器来执行函数(在操作S940中)。
例如,当在操作S930中生成了用来执行函数A的第一容器和第一调用器且接收到函数A的执行请求时,系统100或200可以使用第一调用器和第一容器无时延地快速执行函数A。
图10是示出根据实施方式的系统100或200的操作方法的流程图。
参考图10,系统100或200可以接收到对用于执行函数的资源的设定请求(在操作S1010中)。
响应于对资源的设定请求,系统100或200可以提供用户界面屏幕,该用户界面屏幕包括针对具体函数设定存储器和/或CPU规格的条目、针对具体函数选择是否应用自动预测功能的条目、针对具体函数根据具体时间点设定存储器和/或CPU规格的条目。
另外,系统100或200可以分析请求资源设定所针对的函数的特性(在操作S1020中)。
例如,系统100或200可以基于函数的测试日志信息、函数的代码大小、函数执行期间是否需要外部库和函数中是否包含其它函数来确定函数的计算量。
另外,系统100或200可以分析函数的执行信息(例如,函数的执行请求的时间点、函数的执行请求的次数、函数的执行请求的频率等)。例如,系统100或200可以监视函数的执行请求的时间点、函数的执行请求的次数、函数的执行请求的频率等。另外,系统100或200可以通过使用预测模型根据月份、星期几、时区或周年统计函数的执行请求的次数。预测模型可以通过使用函数的执行信息训练得到。由此,系统100或200可以确定与预设次数或更多次数的函数执行请求的时间有关的时间信息。
系统100或200可以基于分析结果提供与资源设定相关的建议信息(在操作S1030中)。
例如,系统100或200可以基于确定的函数计算量提供关于与函数有关的存储器规格和/或CPU规格的建议信息。
另外,系统100或200可以基于分析函数的执行信息的结果根据具体时间或星期几向用户提供与资源设定相关的建议信息(关于存储器规格或CPU规格的建议信息),但是不限于此。
根据实施方式的系统,对函数的执行请求的响应时间、函数的执行时间等可以很快。
根据实施方式的系统,用于执行函数的资源可以被有效地使用。
根据实施方式,用于提供FaaS的系统的操作方法可以被实现为程序指令,该程序指令可以使用各种计算机部件执行并且可以被写入计算机可读记录介质。计算机可读记录介质可以单独地或组合地包括程序指令、数据文件、数据结构等。写入计算机可读记录介质的程序指令可以被特别设计和配置用于本公开的实施方式或可以是总所周知的且为本领域普通技术人员可得。计算机可读记录介质的示例包括磁媒质(例如,硬盘、软盘、磁带等)、光媒质(例如,CD-ROM或DVD)、磁-光媒质(例如,光磁软盘)和特别配置为存储和执行程序指令的硬件装置(例如,ROM、RAM、闪存存储器等)。程序指令的示例不仅包括通过使用编译器生成的机器代码,而且还包括可以在计算机上通过使用解释器等执行的高级语言代码。
而且,根据实施方式,用于提供FaaS的系统或系统的操作方法可以包含在待被提供的计算机程序产品中。计算机程序产品可以是销售者与购买者之间交易的产品。
计算机程序产品可以包括软件程序和存储软件程序的计算机可读存储介质。例如,计算机程序产品可以包括通过电子市场(例如,Google Play StoreTM或AppStore)或电子装置的制造商作为软件程序电子发放的产品(例如,可下载的应用)。对于电子发放,软件程序的至少一部分可以被存储在存储介质中或者可以被临时生成。在这种情况下,存储介质可以是制造商的服务器、电子市场的服务器、或临时存储软件程序的中继服务器的存储介质。
计算机程序产品可以包括包含服务器和客户端设备的系统中的服务器的存储介质或客户端设备的存储介质。替代地,当存在与服务器或客户端设备通信的第三设备(例如,智能电话)时,计算机程序产品可以包括第三设备的存储介质。替代地,计算机程序产品可以包括从服务器发送至客户端设备或第三终端或从第三设备发送到客户端设备的软件程序自身。
在这种情况下,服务器、客户端设备和第三设备中的一个可以执行计算机程序产品并可以执行根据实施方式的方法。替代地,服务器、客户端设备和第三设备中的两个或更多个可以执行计算机程序产品并可以执行根据实施方式的方法。
例如,服务器(例如,云服务器或人工智能(AI)服务器)可以执行存储在服务器中的计算机程序产品并可以控制与服务器通信的客户端设备来执行根据实施方式的方法。
尽管参考附图描述了一个或多个实施方式,但是本公开的范围不受其限制,本领域普通技术人员将理解,在不背离由权利要求及其等同限定的精神和范围的前提下可以进行形式和细节的各种改变。
Claims (15)
1.一种提供函数即服务(FaaS)的系统,所述系统包括:
通信器,被配置为接收用于设定资源以执行所述函数的请求;
存储器,存储至少一个指令;以及
处理器,被配置为执行存储在所述存储器中的所述至少一个指令,
其中所述处理器还被配置为执行所述至少一个指令以分析所述函数的特性来生成分析结果并基于所述分析结果生成与所述资源的设定相关的建议信息。
2.如权利要求1所述的系统,其中所述处理器还被配置为执行所述至少一个指令以基于所述函数的测试日志信息、所述函数的代码大小、所述函数执行期间是否需要外部库和所述函数中是否包含其它函数中的至少一个来确定所述函数所需的计算量,并基于所述函数所需的计算量生成所述建议信息。
3.如权利要求1所述的系统,其中所述处理器还被配置为执行所述至少一个指令以分析所述函数的执行信息来生成执行分析结果并基于所述执行分析结果生成所述建议信息。
4.如权利要求3所述的系统,其中所述函数的所述执行信息包括做出所述函数的执行请求的时间点、做出所述函数的执行请求的次数和做出所述函数的执行请求的频率中的至少一个,
其中所述处理器还被配置为执行所述至少一个指令以监视做出所述函数的执行请求的时间点、做出预设次数的执行请求,并基于与所述时间信息对应的所述函数的执行请求的次数生成所述建议信息。
5.如权利要求3所述的系统,其中所述通信器还被配置为接收所述函数的执行请求,
其中所述处理器还被配置为执行所述至少一个指令以分析所述函数的特性和所述函数的执行信息中的至少一个来生成所述分析结果,基于所述分析结果分配用来执行所述函数的资源,并基于所述函数的执行请求使用分配的资源来执行所述函数。
6.如权利要求5所述的系统,其中所述处理器还被配置为执行所述至少一个指令以基于第一函数的特性和所述第一函数的执行信息中的至少一个生成与所述第一函数对应的第一容器,并基于第二函数的特性和所述第二函数的执行信息中的至少一个生成与所述第二函数对应的第二容器,
其中基于所述第一函数的执行请求使用所述第一容器来执行所述第一函数,基于所述第二函数的执行请求使用所述第二容器来执行所述第二函数。
7.如权利要求5所述的系统,所述处理器还被配置为执行所述至少一个指令以监视所述函数的执行请求的时间点,以确定与做出所述函数的执行请求的时间和做出预设次数的执行请求有关的时间信息,并基于确定的时间信息分配用于执行所述函数的资源。
8.如权利要求7所述的系统,其中所述处理器还被配置为执行所述至少一个指令以在与所述时间信息对应的时间点之前生成用来执行所述函数的调用器和容器。
9.如权利要求7所述的系统,其中所述处理器还被配置为执行所述至少一个指令以基于与所述确定的时间信息对应的做出的所述函数的执行请求的预设次数来确定用于执行所述函数的资源量。
10.如权利要求5所述的系统,其中分配的资源包括容器,执行所述函数所需的外部库在所述函数的执行请求之前被下载到所述容器中。
11.如权利要求5所述的系统,其中所述处理器还被配置为执行所述至少一个指令以基于所述函数的特性确定所述函数的计算量,并基于确定出所述函数的计算量小于预设的计算量为所述函数分配第一预定数量的容器、以及基于确定出所述函数的计算量等于或大于所述预设的计算量为所述函数分配第二预定数量的容器,其中所述第二预定数量的容器多于所述第一预定数量的容器。
12.一种提供函数即服务(FaaS)的操作方法,所述操作方法包括:
接收对执行所述函数的资源的设定请求;
分析所述函数的特性;以及
基于所述分析的结果生成与所述资源的设定相关的建议信息。
13.根据权利要求12所述的操作方法,其中分析所述函数的特性包括基于所述函数的测试日志信息、所述函数的代码大小、所述函数执行期间是否需要外部库和所述函数是否包含其它函数中的至少一个确定所述函数的计算量,
其中生成所述建议信息包括基于所述函数的计算量生成所述建议信息。
14.如权利要求12所述的操作方法,还包括:
分析所述函数的执行信息;以及
基于所述函数的执行信息的分析结果生成所述建议信息。
15.如权利要求14所述的操作方法,其中所述函数的执行信息包括做出所述函数的执行请求的时间点、做出所述函数的执行请求的次数和所述函数的执行请求的频率中的至少一个,
其中分析所述函数的执行信息包括监视所述函数的执行请求的时间点以确定与做出所述函数的执行请求的时间和做出预设次数的执行请求有关的时间信息,以及
其中基于分析所述函数的执行信息提供所述建议信息包括基于与所述时间信息对应的做出的所述函数的执行请求的次数生成所述建议信息。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762542916P | 2017-08-09 | 2017-08-09 | |
US62/542,916 | 2017-08-09 | ||
KR1020180084271A KR102120868B1 (ko) | 2017-08-09 | 2018-07-19 | 서비스형 함수(FaaS)를 제공하는 시스템 및 그 동작방법 |
KR10-2018-0084271 | 2018-07-19 | ||
PCT/KR2018/008887 WO2019031783A1 (en) | 2017-08-09 | 2018-08-06 | ON-DEMAND FUNCTION SUPPLY SYSTEM (FAAS), AND METHOD OF OPERATING THE SYSTEM |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110832461A true CN110832461A (zh) | 2020-02-21 |
CN110832461B CN110832461B (zh) | 2023-10-31 |
Family
ID=65528920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880044317.1A Active CN110832461B (zh) | 2017-08-09 | 2018-08-06 | 用于提供函数即服务(faas)的系统及该系统的操作方法 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP3602299B1 (zh) |
KR (1) | KR102120868B1 (zh) |
CN (1) | CN110832461B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113806094A (zh) * | 2021-09-23 | 2021-12-17 | 宝信软件(武汉)有限公司 | 一种基于深度学习的云平台资源动态调度方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200109819A (ko) | 2019-03-14 | 2020-09-23 | 삼성전자주식회사 | 전자 장치 및 이의 제어 방법 |
KR20210059179A (ko) | 2019-11-15 | 2021-05-25 | 한국전자통신연구원 | 마이크로 펑션의 빠른 실행을 위한 펑션 관리 방법 및 이를 위한 장치 |
KR102305122B1 (ko) * | 2019-12-05 | 2021-09-27 | 국민대학교산학협력단 | 클라우드 기반 함수 실행 서비스를 제공하는 시스템 및 이의 자원 할당 방법 |
US11948010B2 (en) | 2020-10-12 | 2024-04-02 | International Business Machines Corporation | Tag-driven scheduling of computing resources for function execution |
KR102553440B1 (ko) * | 2020-11-27 | 2023-07-11 | 한국전력공사 | 서버리스 개발 지원 플랫폼 |
KR102537906B1 (ko) * | 2022-01-07 | 2023-05-30 | 주식회사 저스트큐 | 위탁 판매를 위한 관리 서버의 오토 스케일링 방법 |
KR102488113B1 (ko) * | 2022-08-17 | 2023-01-13 | (주)시큐레이어 | AI Manager를 이용하여 클라우드 환경에서 동작 중인 서비스를 관리하는 방법 및 이를 이용한 메인 서버 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101044486A (zh) * | 2004-09-28 | 2007-09-26 | 国际商业机器公司 | 协调服务性能和应用放置管理 |
CN101421711A (zh) * | 2006-04-13 | 2009-04-29 | 微软公司 | 用于资源受限设备的虚拟执行系统 |
WO2011161578A1 (en) * | 2010-06-25 | 2011-12-29 | Nokia Corporation | Methods, apparatuses and computer program products for extending the capabilities of platform-independent applications on devices |
US20130212277A1 (en) * | 2012-02-14 | 2013-08-15 | Microsoft Corporation | Computing cluster with latency control |
US20140040924A1 (en) * | 2011-07-13 | 2014-02-06 | Adobe Systems Incorporated | Invocation of additional processing using remote procedure calls |
US20150281111A1 (en) * | 2014-03-28 | 2015-10-01 | Amazon Technologies, Inc. | Implementation of a service that coordinates the placement and execution of containers |
WO2016009311A1 (en) * | 2014-07-18 | 2016-01-21 | Thomson Reuters Global Resources | System and method for electronic work prediction and dynamically adjusting server resources |
US9280389B1 (en) * | 2014-12-30 | 2016-03-08 | Tyco Fire & Security Gmbh | Preemptive operating system without context switching |
CN106031128A (zh) * | 2013-12-31 | 2016-10-12 | 思杰系统有限公司 | 提供移动设备管理功能 |
US20170126792A1 (en) * | 2015-11-02 | 2017-05-04 | Telefonaktiebolaget L M Ericsson (Publ) | System and methods for intelligent service function placement and autoscale based on machine learning |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8799423B2 (en) * | 2009-07-15 | 2014-08-05 | Consumer Software International, Inc. | System and method for optimizing and digitally correcting errors on a computer system |
US8661120B2 (en) * | 2010-09-21 | 2014-02-25 | Amazon Technologies, Inc. | Methods and systems for dynamically managing requests for computing capacity |
US8950215B2 (en) * | 2010-10-06 | 2015-02-10 | Apple Inc. | Non-contact polishing techniques for reducing roughness on glass surfaces |
WO2014073024A1 (en) * | 2012-11-09 | 2014-05-15 | Hitachi, Ltd. | Management computer, computer system, and instance management method |
KR101360263B1 (ko) * | 2012-11-30 | 2014-02-12 | 한국과학기술정보연구원 | 계산작업 제어장치, 계산작업 제어방법, 및 계산작업을 제어하는 소프트웨어를 저장하는 저장매체 |
CN104714812B (zh) * | 2013-12-13 | 2018-03-23 | 中国电信股份有限公司 | 在云环境中快速部署和加载Java应用的方法和系统 |
KR20170011802A (ko) * | 2015-07-24 | 2017-02-02 | 삼성전자주식회사 | 기능 수행 환경의 백업 및 복원을 지원하는 장치 및 그 방법 |
-
2018
- 2018-07-19 KR KR1020180084271A patent/KR102120868B1/ko active IP Right Grant
- 2018-08-06 CN CN201880044317.1A patent/CN110832461B/zh active Active
- 2018-08-06 EP EP18845032.4A patent/EP3602299B1/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101044486A (zh) * | 2004-09-28 | 2007-09-26 | 国际商业机器公司 | 协调服务性能和应用放置管理 |
CN101421711A (zh) * | 2006-04-13 | 2009-04-29 | 微软公司 | 用于资源受限设备的虚拟执行系统 |
WO2011161578A1 (en) * | 2010-06-25 | 2011-12-29 | Nokia Corporation | Methods, apparatuses and computer program products for extending the capabilities of platform-independent applications on devices |
US20140040924A1 (en) * | 2011-07-13 | 2014-02-06 | Adobe Systems Incorporated | Invocation of additional processing using remote procedure calls |
US20130212277A1 (en) * | 2012-02-14 | 2013-08-15 | Microsoft Corporation | Computing cluster with latency control |
CN106031128A (zh) * | 2013-12-31 | 2016-10-12 | 思杰系统有限公司 | 提供移动设备管理功能 |
US20150281111A1 (en) * | 2014-03-28 | 2015-10-01 | Amazon Technologies, Inc. | Implementation of a service that coordinates the placement and execution of containers |
CN106133688A (zh) * | 2014-03-28 | 2016-11-16 | 亚马逊技术有限公司 | 协调容器布置和执行的服务的实施 |
WO2016009311A1 (en) * | 2014-07-18 | 2016-01-21 | Thomson Reuters Global Resources | System and method for electronic work prediction and dynamically adjusting server resources |
US9280389B1 (en) * | 2014-12-30 | 2016-03-08 | Tyco Fire & Security Gmbh | Preemptive operating system without context switching |
US20170126792A1 (en) * | 2015-11-02 | 2017-05-04 | Telefonaktiebolaget L M Ericsson (Publ) | System and methods for intelligent service function placement and autoscale based on machine learning |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113806094A (zh) * | 2021-09-23 | 2021-12-17 | 宝信软件(武汉)有限公司 | 一种基于深度学习的云平台资源动态调度方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3602299A4 (en) | 2020-02-05 |
KR20190016895A (ko) | 2019-02-19 |
CN110832461B (zh) | 2023-10-31 |
EP3602299B1 (en) | 2024-07-17 |
KR102120868B1 (ko) | 2020-06-09 |
EP3602299A1 (en) | 2020-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110832461B (zh) | 用于提供函数即服务(faas)的系统及该系统的操作方法 | |
US11126463B2 (en) | System for providing function as a service (FaaS), and operating method of system | |
CN113259433B (zh) | 为未来动作优化用户界面数据缓存的方法、设备和系统 | |
US10789544B2 (en) | Batching inputs to a machine learning model | |
US10768988B2 (en) | Real-time partitioned processing streaming | |
US10691647B2 (en) | Distributed file system metering and hardware resource usage | |
CN108052384B (zh) | 一种任务处理方法、服务平台及电子设备 | |
US9423957B2 (en) | Adaptive system provisioning | |
CN106415489B (zh) | 应用建议特征 | |
KR20200109819A (ko) | 전자 장치 및 이의 제어 방법 | |
US20200145300A1 (en) | Service-aware serverless cloud computing system | |
US11288601B2 (en) | Self-learning selection of information-analysis runtimes | |
CN110764892A (zh) | 任务处理方法、设备及计算机可读存储介质 | |
US20160080284A1 (en) | Method and apparatus for executing application based on open computing language | |
JP2023508591A (ja) | クラウド・テナントのオンボード/オフボードの間の外部システムのためのスケーリング計画の生成 | |
EP3005101B1 (en) | Coordination of system readiness tasks | |
US20170351554A1 (en) | Method and system for cloud service based on redistribution of processing power | |
CN117716373A (zh) | 基于期望的度量值提供机器学习模型 | |
KR20150083476A (ko) | 클라우드 서비스 제공 방법 및 시스템 | |
US20230112031A1 (en) | System and method for workload management in a distributed system | |
KR102305122B1 (ko) | 클라우드 기반 함수 실행 서비스를 제공하는 시스템 및 이의 자원 할당 방법 | |
KR20230037196A (ko) | 기기에 탑재된 다수의 연합 학습 모델을 관리하는 방법, 시스템, 및 컴퓨터 프로그램 | |
Allen et al. | Comparing Cost and Performance of Microservices and Serverless in AWS: EC2 vs Lambda | |
CN116860796A (zh) | 数据匹配方法、装置、存储介质及电子设备 | |
CN117193990A (zh) | http接口的调度管理方法、装置、设备及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |