CN116610310B - 一种基于Serverless架构的FaaS函数管理方法 - Google Patents
一种基于Serverless架构的FaaS函数管理方法 Download PDFInfo
- Publication number
- CN116610310B CN116610310B CN202310631420.9A CN202310631420A CN116610310B CN 116610310 B CN116610310 B CN 116610310B CN 202310631420 A CN202310631420 A CN 202310631420A CN 116610310 B CN116610310 B CN 116610310B
- Authority
- CN
- China
- Prior art keywords
- function
- library
- private
- user
- cloud
- 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.)
- Active
Links
- 238000007726 management method Methods 0.000 title claims abstract description 19
- 230000006870 function Effects 0.000 claims abstract description 313
- 238000011161 development Methods 0.000 claims abstract description 12
- 230000007246 mechanism Effects 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 10
- 238000002955 isolation Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000000295 complement effect Effects 0.000 claims description 3
- 230000008901 benefit Effects 0.000 abstract description 4
- 238000013461 design Methods 0.000 abstract description 4
- 238000012546 transfer Methods 0.000 abstract description 4
- 238000012423 maintenance Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000008602 contraction Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003631 expected effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于Serverless架构的FaaS函数管理方法,属于云计算技术领域;本发明设计了一个基于FaaS的在线开发平台,创新性的提出一种新型的FaaS函数“公有库”与“私有库”混合互通的管理模式,用户可自己建立多个私有库,云平台为每个租户维护一个单独私有库,并提供从“私有库”向“公有库”的转移机制,允许用户将自己编写的私有函数转移到公有库,并公开对外使用。函数被调用时产生的收益会按一定比例分配给函数贡献者,以保障函数贡献者权益。云平台也可借助众筹贡献者的力量,快速扩大函数库规模,提供更丰富的编程接口,简化复杂云应用的开发复杂度。
Description
技术领域
本发明涉及云计算技术领域,具体为一种基于Serverless架构的FaaS函数管理方法。
背景技术
Serverless计算是一种云计算执行模型,在这种执行模型下,云服务提供商几乎接管了所有服务器的维护工作,并按需为应用提供计算资源。Serverless应用的开发者无需关心底层计算资源的配置,管理,维护和容错问题。
FaaS是一种Serverless架构的实现方式,允许用户将代码片段作为具备独立功能的函数进行部署和运行。FaaS服务的使用者无需构建和维护计算环境,极大简化了应用开发和运维的复杂性。FaaS服务常被用于构建微服务架构应用,但是使用FaaS开发的应用通常以函数为单位,相比于传统的微服务架构应用粒度更小。
目前,各大云服务厂商都推出了自己的FaaS产品,包括AWS Lambda,MicrosoftAzure Functions,Google Cloud Functions,IBM Cloud Functions和阿里云函数计算等。开源社区中也有大量FaaS平台的实现方式,使用者较多的有OpenFaaS,Fission,Kubeless以及OpenWhisk等。总体而言,FaaS产品在近几年逐渐流行了起来。
不论是云服务厂商还是开源社区提供的FaaS平台,它们对于云函数的管理机制还比较单一。现有的FaaS平台只提供了计算底座,并不提供云函数库。在使用FaaS平台时,由于FaaS平台本身不提供云函数库,用户必须先从头开始构建属于自己的云函数库。在这种情况下,一个FaaS平台的不同用户极有可能重复开发具有相似功能的函数,很大程度上制约了用户在FaaS平台上的生产效率,提高了开发云应用的复杂度。除此之外,缺乏一个公有的高质量的函数库使得用户个人开发的代码的质量得不到保障。个人开发的代码或多或少在性能和安全等方面有缺陷,而有相关的论文表明,在FaaS平台上,用户代码中存在的漏洞可能会引起个人隐私数据泄露等问题。
现有的FaaS平台还存在租户间的函数不互通的问题,这是云函数的管理机制单一的另一体现。租户无法将自己的云函数提供给他人使用,云函数的代码是闭源的。闭源的专有软件存在开发难度大,投入周期长,开发成本较高等问题。在闭源方式下想要构建出稳定可靠且惠及多人的软件是相当困难的。而开源的软件开发方式能够让应用开发者复用他人发布的代码,增加优质代码产出,使得软件开发过程更加平滑。目前,开源社区的规模相当庞大,而且不同的编程语言拥有各自的中心代码仓库,比如Python的PyPI,Java的MavenRepository以及JavaScript的npm Registry等。开发者不仅可以使用他人的代码,而且可以发布个人的代码到中心代码仓库,这个向中心代码仓库贡献的能力为整个语言的生态带来了积极的效益。
开源的理念在FaaS平台上能够得到更进一步的阐释。在现有的开源方式下,不同语言之间的社区和生态存在难以融合的问题。这主要是因为传统的软件开发方式复用的只是特定编程语言的代码,并不是真正复用代码带来的功能,想要复用不同语言的代码的功能,通常需要进行特定的比较繁琐的操作,并且函数调用的接口没有一个统一的规范,导致跨语言的代码复用异常困难。即使就同一编程语言而言,当开发者想使用第三方库的部分功能时,通常需要下载完整的第三方代码包,无法只抽离出部分必要的逻辑,这一定程度上体现出了传统的软件开发方案存在代码耦合度高,灵活性不强的问题。就FaaS服务模型而言,它的服务粒度是一个单一职责的云函数,一个云函数的功能则是可以复用的单元,使用者只需遵循统一的接口规范,即可获得预期的效果。FaaS对使用者隐藏了编程语言的具体细节,不同语言的开发者可以通过统一的接口规范复用同一个云函数带来的功能。FaaS函数的功能可复用特性使得不同语言之间的生态融合成为可能。。
基于上述内容,本发明提出一种基于Serverless架构的FaaS函数管理方法。
发明内容
1、本发明要解决的技术问题
本发明的目的在于提出一种基于Serverless架构的FaaS函数管理方法以解决现有的FaaS平台下函数管理机制单一、租户间函数不互通、函数代码重复开发且代码质量不保证的问题。
2、技术方案
为实现上述目的,本发明提供如下技术方案:
一种基于Serverless架构的FaaS函数管理方法,开发一个基于FaaS的在线开发平台,用户在所述平台上部署、使用个人的私有云函数库或访问、使用官方云函数库;用户贡献自己的私有云函数库至官方云函数库中以丰富平台的功能;所述平台具体包括如下功能模块:
①私有云函数库隔离模块:实现不同用户之间私有云函数库的隔离,不同的用户无法访问和使用对方的云函数库;所述私有云函数库隔离模块为用户分配独立的函数资源,以函数库和函数的命名为例,不同的用户拥有不同的函数库和函数命名空间,用户无需担心个人的私有函数库名会与其他用户的函数库名发生冲突;
②官方云函数库共享模块:实现云函数库共享功能,所有的用户均可以访问和使用官方云函数库,用户只需根据根据函数相应的文档进行使用即可;
③私有云函数库贡献模块:用户通过该模块实现将个人的私有函数库贡献至官方函数库;用户贡献函数库时提交完整的使用文档,贡献后的函数经由平台管理审核,审核通过后的函数库进入官方云函数库中,开始给平台所有的用户使用。
优选地,用户通过在代码中分别引入官方云函数库和私有云函数库对应的SDK来使用官方云函数库和私有云函数库,所述方法具体包括以下内容:
S1、用户在平台上编写好主程序的代码,所述代码包含对官方云函数库或私有云函数库中云函数的调用;
S2、用户运行S1中编写好的主程序代码;
S3、主程序在运行的过程中,执行到调用云函数的语句,根据调用的云函数的不同类型,平台执行不同的逻辑;若调用的是官方云函数库中的函数,平台直接在官方云函数库中找到对应的函数;若调用的是私有云函数库中的函数,平台找到用户对应的私人命名空间下的对应函数;
S4、找到对应的函数后,平台调用该云函数,执行该与函数对应的功能,并返回云函数的结果至主程序中;
S5、主程序运行结束后,平台将程序运行结果返回给用户。
优选地,所述用户将个人的私有函数库贡献至官方函数库,具体贡献流程为:
B1、用户选择语言新建函数,平台针对不同的语言提供相应的预制模板,所述模板包含与创建函数服务同名的函数作为入口,并引入了统一的序列化机制,实现在数据传输的时候自动将用户函数的数据序列化;
B2、用户在平台提供的入口函数上进行代码的编写;
B3、平台将用户编写的代码自动部署成私有库云函数;
B4、用户通过“贡献”的形式提交对私有库云函数部署为官方库函数的申请;用户在贡献私有函数时完善函数的说明文档与使用样例,贡献后天演自动生成一份此时刻用户私有函数的复件,将该复件添加到待审核函数的列表中;
B5、审核通过后,审核员选择将该函数添加到pangu已有的函数库中,或是新建的函数库中;天演自动根据用户提交的说明文档与使用样例生成函数文档,添加到平台文档中,并将该函数添加到官方库函数代码补全列表中。
优选地,所述B3进一步包括以下内容:部署前,平台在函数库名前自动生成一串具有用户唯一性的前缀prefix;基于HMAC加密算法设计加密方式:借助用户id与后台管理的密钥生成一串具有用户唯一性的密文,以此密文作为prefix来进行函数的隔离;平台在函数库部署到后台时自动将prefix拼接到函数库名前,对于不同用户间存在的重名函数库,在后台管理时借助prefix将其隔离开;用户无法获取到其他用户的prefix信息,也无法访问到后台管理的其他用户的函数。
优选地,所述B4中复件添加到待审核函数的列表中后用户再次对私有函数进行修改时不会影响到这份复件,同样审核员在审核修改复件的时候也不会对用户的私有函数产生改动。
3、有益效果
本发明提出一种基于Serverless架构的FaaS函数管理方法,设计了一个基于FaaS的在线开发平台,创新性的提出一种新型的FaaS函数“公有库”与“私有库”混合互通的管理模式,即云平台为每个租户维护一个单独私有库,并提供从“私有库”向“公有库”的转移机制,允许用户将自己编写的私有函数转移到公有库,并公开对外使用。函数被调用时产生的收益会按一定比例分配给函数贡献者,以保障函数贡献者权益。云平台也可借助众筹贡献者的力量,快速扩大函数库规模,提供更丰富的编程接口,简化复杂云应用的开发复杂度,具体体现为:
(1)本发明将不同的用户的函数资源以及个人信息等进行隔离,确保函数资源不会冲突(比如函数重名)以及用户的私人敏感数据不泄露;
(2)本发明提供官方函数库和私有函数库的“平台化”开发方式,迅速扩大函数库的规模,提高平台的服务能力;
(3)本发明利用FaaS的函数化特性,构建起一个融合多编程语言的代码社区。
附图说明
图1为本发明实施例2中官方云函数库与私有云函数库调用流程图;
图2为本发明实施例2中官方云函数库与私有云函数库贡献流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
其次,此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。
实施例1:
一种基于Serverless架构的FaaS函数管理方法,开发一个基于FaaS的在线开发平台,用户在所述平台上部署、使用个人的私有云函数库或访问、使用官方云函数库;用户贡献自己的私有云函数库至官方云函数库中以丰富平台的功能;所述平台具体包括如下功能模块:
①私有云函数库隔离模块:实现不同用户之间私有云函数库的隔离,不同的用户无法访问和使用对方的云函数库;所述私有云函数库隔离模块为用户分配独立的函数资源,以函数库和函数的命名为例,不同的用户拥有不同的函数库和函数命名空间,用户无需担心个人的私有函数库名会与其他用户的函数库名发生冲突;
②官方云函数库共享模块:实现云函数库共享功能,所有的用户均可以访问和使用官方云函数库,用户只需根据根据函数相应的文档进行使用即可;
③私有云函数库贡献模块:用户通过该模块实现将个人的私有函数库贡献至官方函数库;用户贡献函数库时提交完整的使用文档,贡献后的函数经由平台管理审核,审核通过后的函数库进入官方云函数库中,开始给平台所有的用户使用;
用户通过在代码中分别引入官方云函数库和私有云函数库对应的SDK来使用官方云函数库和私有云函数库,请参阅图1,所述方法具体包括以下内容:
S1、用户在平台上编写好主程序的代码,所述代码包含对官方云函数库或私有云函数库中云函数的调用;
S2、用户运行S1中编写好的主程序代码;
S3、主程序在运行的过程中,执行到调用云函数的语句,根据调用的云函数的不同类型,平台执行不同的逻辑;若调用的是官方云函数库中的函数,平台直接在官方云函数库中找到对应的函数;若调用的是私有云函数库中的函数,平台找到用户对应的私人命名空间下的对应函数;
S4、找到对应的函数后,平台调用该云函数,执行该与函数对应的功能,并返回云函数的结果至主程序中;
S5、主程序运行结束后,平台将程序运行结果返回给用户。
实施例2:
基于实施例1但有所不同之处在于,用户对私有云函数库和官方云函数库的调用,更具体地包括以下内容:
A1、用户在平台上编写好主程序的代码,所述代码中包含对官方云函数库或者私有云函数库中的云函数的调用;
A2、用户在平台上进行主程序的运行,平台收到请求后,对代码进行逐行执行;
A3、执行中若遇到云函数库的调用,则通过使用的SDK判断云函数调用的类型:如果是官方库函数,则进入A4;如果是私有库函数,则进入A5;
A4、直接通过SDK的传参内容,对Serverless平台发起请求,进入A6;
A5、平台通过HMAC加密算法生成该用户的前缀prefix与其调用的函数库名进行合并,然后对Serverless平台发起请求,进入A6;
A6、主函数拿到请求返回的结果,自动解析出其中的数据,继续进行执行;
A7、主函数运行结束后,返回结果给用户。
请参阅图2,用户将个人的私有函数库贡献至官方函数库,具体贡献流程为:
B1、用于选择语言新建函数,会得到我们的预制模板。我们对不同的语言提供相应的预制模板,此模板包含与创建函数服务同名的函数作为入口,并引入了统一的序列化机制,使得在数据传输的时候自动将用户函数的数据序列化。这样我们标准化了云函数的输入和输出的格式,使得云函数在多语言场景下正常被调用成为了可能。
B2、用户在我们提供的入口函数进行代码的编写,由于我们提供了部署成云函数的其他所有机制,用户这一步的编写将与本机没有区别
B3、用户部署成函数,此处将自动部署为私有库云函数。部署前,平台在函数库名前自动生成一串具有用户唯一性的前缀prefix。我们基于HMAC加密算法设计了一套独特的加密方式。借助用户id与后台管理的密钥生成一串具有用户唯一性的密文,以此密文作为prefix来进行函数的隔离。平台会在函数库部署到后台时自动将prefix拼接到函数库名前,就算不同用户间有重名函数库,在后台管理时也可借助prefix将其隔离开。除此之外,由于用户无法获取到其他用户的prefix信息,用户也将无法访问到后台管理的其他用户的函数。
B4(可选的)、用户通过“贡献”的形式提交对私有库函数部署为官方库函数的申请。用户在贡献私有函数时需要完善函数的说明文档与使用样例,贡献后天演会自动生成一份此时刻用户私有函数的复件,将该复件添加到待审核函数的列表中。此后用户再次对私有函数进行修改时不会影响到这份复件,同样审核员在审核修改复件的时候也不会对用户的私有函数产生改动。
B5(可选的)、审核通过后,审核员可选择将该函数添加到pangu已有的函数库中,或是新建的函数库中。同时天演会自动根据用户提交的说明文档与使用样例生成函数文档,添加到平台文档中,并将该函数添加到官方库函数代码补全列表中。
实施例3:
22年11月,召集40人在本发明所预搭建的平台对数值计算领域的应用进行了测试,14天内平台总函数调用达到了4.14万次,总共数据使用达到了46.68GB,vCPU使用量共有9.2万vCPU*秒。
其中共有11个私有函数库的调用超过200次以上,大多为并行调用。这说明我们的设计高度复用了已部署的代码,并利用了FaaS平台具有的自动扩缩容机制进行了并行加速。
在23年4月召集了149人在我们预搭建的平台对数值计算领域的应用进行了测试,如下为其中一周的使用数据:
表:天演平台云服务处理数据检测
此外,单日最高调用次数达2.85万次,超过共有30个私有函数库的调用超过200次以上.
目前平台总共拥有9个官方库,已有218个官方库函数,接近1000个待审核的贡献函数。对于可并行化的函数,在20~50线程下的加速比平均达到了12×。以预训练模型函数库为例:
这说明我们的设计能够达到很好的效率。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其改进构思加以等同替换或改变,都应涵盖在本发明的保护范围内。
Claims (3)
1.一种基于Serverless架构的FaaS函数管理方法,其特征在于,开发一个基于FaaS的在线开发平台,用户在所述平台上部署、使用个人的私有云函数库或访问、使用官方云函数库;用户贡献自己的私有云函数库至官方云函数库中以丰富平台的功能;所述平台具体包括如下功能模块:
①私有云函数库隔离模块:实现不同用户之间私有云函数库的隔离,不同的用户无法访问和使用对方的云函数库;所述私有云函数库隔离模块为用户分配独立的函数资源,以函数库和函数的命名为例,不同的用户拥有不同的函数库和函数命名空间;
②官方云函数库共享模块:实现云函数库共享功能,所有的用户均能够访问和使用官方云函数库,用户只需根据根据函数相应的文档进行使用;
③私有云函数库贡献模块:用户通过该模块实现将个人的私有函数库贡献至官方函数库;用户贡献函数库时提交完整的使用文档,贡献后的函数经由平台管理审核,审核通过后的函数库进入官方云函数库中,开始给平台所有的用户使用;
所述用户通过私有云函数库贡献模块实现将个人的私有函数库贡献至官方函数库,具体贡献流程为:
B1、用户选择语言新建函数,平台针对不同的语言提供相应的预制模板,所述模板包含与创建函数服务同名的函数作为入口,并引入了统一的序列化机制,实现在数据传输的时候自动将用户函数的数据序列化;
B2、用户在平台提供的入口函数上进行代码的编写;
B3、平台将用户编写的代码自动部署成私有库云函数;
B4、用户通过“贡献”的形式提交对私有库云函数部署为官方库函数的申请;用户在贡献私有函数时完善函数的说明文档与使用样例,贡献后天演自动生成一份此时刻用户私有函数的复件,将该复件添加到待审核函数的列表中;
B5、审核通过后,审核员选择将该函数添加到pangu已有的函数库中,或是新建的函数库中;天演自动根据用户提交的说明文档与使用样例生成函数文档,添加到平台文档中,并将该函数添加到官方库函数代码补全列表中;
用户通过在代码中分别引入官方云函数库和私有云函数库对应的SDK来使用官方云函数库和私有云函数库,所述方法具体包括以下内容:
S1、用户在平台上编写好主程序的代码,所述代码包含对官方云函数库或私有云函数库中云函数的调用;
S2、用户运行S1中编写好的主程序代码;
S3、主程序在运行的过程中,执行到调用云函数的语句,根据调用的云函数的不同类型,平台执行不同的逻辑;若调用的是官方云函数库中的函数,平台直接在官方云函数库中找到对应的函数;若调用的是私有云函数库中的函数,平台找到用户对应的私人命名空间下的对应函数;
S4、找到对应的函数后,平台调用该云函数,执行与函数对应的功能,并返回云函数的结果至主程序中;
S5、主程序运行结束后,平台将程序运行结果返回给用户。
2.根据权利要求1所述的一种基于Serverless架构的FaaS函数管理方法,其特征在于,所述B3进一步包括以下内容:部署前,平台在函数库名前自动生成一串具有用户唯一性的前缀prefix;基于HMAC加密算法设计加密方式:借助用户id与后台管理的密钥生成一串具有用户唯一性的密文,以此密文作为prefix来进行函数的隔离;平台在函数库部署到后台时自动将prefix拼接到函数库名前,对于不同用户间存在的重名函数库,在后台管理时借助prefix将其隔离开;用户无法获取到其他用户的prefix信息,也无法访问到后台管理的其他用户的函数。
3.根据权利要求1所述的一种基于Serverless架构的FaaS函数管理方法,其特征在于,所述B4中复件添加到待审核函数的列表中后用户再次对私有函数进行修改时不会影响到这份复件,同样审核员在审核修改复件的时候也不会对用户的私有函数产生改动。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310631420.9A CN116610310B (zh) | 2023-05-31 | 2023-05-31 | 一种基于Serverless架构的FaaS函数管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310631420.9A CN116610310B (zh) | 2023-05-31 | 2023-05-31 | 一种基于Serverless架构的FaaS函数管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116610310A CN116610310A (zh) | 2023-08-18 |
CN116610310B true CN116610310B (zh) | 2023-11-14 |
Family
ID=87681592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310631420.9A Active CN116610310B (zh) | 2023-05-31 | 2023-05-31 | 一种基于Serverless架构的FaaS函数管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116610310B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112134918A (zh) * | 2020-08-04 | 2020-12-25 | 杭州未名信科科技有限公司 | 云服务中函数与触发器匹配状态的检测及处理方法 |
CN114356341A (zh) * | 2022-01-04 | 2022-04-15 | 腾讯科技(成都)有限公司 | 一种数据处理方法、装置、设备、存储介质及产品 |
CN114390110A (zh) * | 2021-12-31 | 2022-04-22 | 华南理工大学 | 一种带约束的可扩展资源供给的多租户系统、方法和设备 |
CN114663202A (zh) * | 2022-05-19 | 2022-06-24 | 山东佳联电子商务有限公司 | 一种基于faas函数服务的拍卖竞价系统及方法 |
CN114911518A (zh) * | 2022-04-21 | 2022-08-16 | 携程旅游信息技术(上海)有限公司 | 云函数应用发布管理方法、系统、设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8402127B2 (en) * | 2010-06-28 | 2013-03-19 | Bmc Software, Inc. | System and method for offering virtual private clouds within a public cloud environment |
US11281635B2 (en) * | 2018-10-26 | 2022-03-22 | EMC IP Holding Company LLC | Serverless solution for optimization of object versioning |
-
2023
- 2023-05-31 CN CN202310631420.9A patent/CN116610310B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112134918A (zh) * | 2020-08-04 | 2020-12-25 | 杭州未名信科科技有限公司 | 云服务中函数与触发器匹配状态的检测及处理方法 |
CN114390110A (zh) * | 2021-12-31 | 2022-04-22 | 华南理工大学 | 一种带约束的可扩展资源供给的多租户系统、方法和设备 |
CN114356341A (zh) * | 2022-01-04 | 2022-04-15 | 腾讯科技(成都)有限公司 | 一种数据处理方法、装置、设备、存储介质及产品 |
CN114911518A (zh) * | 2022-04-21 | 2022-08-16 | 携程旅游信息技术(上海)有限公司 | 云函数应用发布管理方法、系统、设备及存储介质 |
CN114663202A (zh) * | 2022-05-19 | 2022-06-24 | 山东佳联电子商务有限公司 | 一种基于faas函数服务的拍卖竞价系统及方法 |
Non-Patent Citations (2)
Title |
---|
Pigeon: A Dynamic and Efficient Serverless and FaaS Framework for Private Cloud;W. Ling 等;《2019 International Conference on Computational Science and Computational Intelligence (CSCI)》;1416-1421 * |
基于非关系型的数据库构建电力系统私有云存储系统;汤胜 等;《仪表技术》(第10期);32-34 * |
Also Published As
Publication number | Publication date |
---|---|
CN116610310A (zh) | 2023-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Marchesi et al. | An agile software engineering method to design blockchain applications | |
JP3723572B2 (ja) | ネットワークにおけるプロセスの移動,実行及び相互作用に基づいた分散処理のためのシステム及び方法 | |
JP5189986B2 (ja) | オブジェクト合成に対する拡張可能メカニズム | |
Fernandez | The Rails 5 Way | |
Worley et al. | Opportunities, challenges, and future extensions for smart-contract design patterns | |
Pereira | Building APIs with Node. js | |
CN116610310B (zh) | 一种基于Serverless架构的FaaS函数管理方法 | |
Altamimi et al. | Performance analysis roundtrip: automatic generation of performance models and results feedback using cross-model trace links | |
Verborgh et al. | LDflex: a read/write linked data abstraction for front-end web developers | |
Mayer | A taxonomy of cross-language linking mechanisms in open source frameworks | |
Gómez et al. | Profiling the publish/subscribe paradigm for automated analysis using colored Petri nets | |
Chaganti et al. | Amazon SimpleDB developer guide | |
Sarma | Smart contracts: a way to modern digital world | |
US20230016241A1 (en) | Highly flexible, scalable multi blockchain, hierarchical data sharing and data storing system and method thereof | |
Krishna et al. | Baas-bioinformatics as a service | |
Hunter II et al. | Multithreaded JavaScript | |
Gutierrez et al. | Spring Boot | |
Pellegrino et al. | Automatic skill generation for knowledge graph question answering | |
Kudermetov et al. | Towards a formalization of the fundamental concepts of SOA | |
Alam et al. | Fenix: distributed e-infrastructure services for ebrains | |
Satapathi et al. | Build a multilanguage text translator using azure cognitive services | |
Bergholm | Development of a Facebook Messenger chatbot application for social media event discovery | |
Washizaki et al. | Software Engineering Patterns for Machine Learning Applications (SEP4MLA)-Part 4-ML Gateway Routing Architecture | |
Hidri et al. | An ontology for composite cloud services description | |
Sharan et al. | Scripting in Java |
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 |