当前位置: 首页 > 专利查询>北京大学专利>正文

有状态的服务器无感知函数的读优化方法和装置制造方法及图纸

技术编号:38687655 阅读:27 留言:0更新日期:2023-09-02 23:01
本公开提供了一种有状态的服务器无感知函数的读优化方法和装置,涉及计算机技术领域,旨在免除读操作日志的情况下,实现严格一次语义。所述方法包括:在有状态的服务器无感知函数针对目标对象进行读操作的情况下,获取所述目标对象的标识;获取所述有状态的服务器无感知函数的内部序列号;根据所述目标对象的标识,从日志存储节点中获取所述目标对象对应的日志支流;根据所述内部序列号在所述日志支流中查询,得到目标日志,所述目标日志的序列号为:小于或等于所述有状态的服务器无感知函数的内部序列号的各个序列号中最大的序列号;获取所述目标日志记录的所述目标对象的版本号;从外部存储节点中读取所述版本号对应的所述目标对象的取值。述目标对象的取值。述目标对象的取值。

【技术实现步骤摘要】
有状态的服务器无感知函数的读优化方法和装置


[0001]本公开涉及计算机
,特别是涉及一种有状态的服务器无感知函数的读优化方法和装置。

技术介绍

[0002]服务器无感知计算是是云计算的重要发展方向之一,服务器无感知计算以函数为中心,开发者只需专注于编写云函数来实现应用逻辑,而应用的部署则由计算服务的提供者完成。服务器无感知计算中的计算资源可以独立于长期的存储资源进行细粒度的配置。该架构能够很好地适配无状态的服务器无感知函数。
[0003]由于可能出现的负载平衡和资源弹性伸缩,有状态的服务器无感知函数(Stateful Serverless Function,SSF)的本地状态无法保证在函数调用之间持久化地保存。因此,为了在多个函数之间共享状态,SSF需要依赖外部存储进行状态管理。
[0004]SSF在执行过程中可能出现的故障,给将SSF的状态管理卸载到外部存储给应用层面的容错带来了挑战。虽然SSF能够被分解为无状态函数和外部状态,但实现SSF的容错并不等同于分别实现每个部分的容错。无状态函数的容错可以通过重新执行先前因故本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种有状态的服务器无感知函数的读优化方法,其特征在于,所述方法包括:在有状态的服务器无感知函数针对目标对象进行读操作的情况下,获取所述目标对象的标识;获取所述有状态的服务器无感知函数的内部序列号;根据所述目标对象的标识,从日志存储节点中获取所述目标对象对应的日志支流;根据所述内部序列号在所述日志支流中查询,得到目标日志,所述目标日志的序列号为:小于或等于所述有状态的服务器无感知函数的内部序列号的各个序列号中最大的序列号;获取所述目标日志记录的所述目标对象的版本号;从外部存储节点中读取所述版本号对应的所述目标对象的取值。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述有状态的服务器无感知函数针对所述目标对象进行写操作的情况下,将所述有状态的服务器无感知函数的步骤序号增加1,并获取所述有状态的服务器无感知函数的标识;根据所述有状态的服务器无感知函数的标识,从所述日志存储节点中获取所述有状态的服务器无感知函数对应的历史日志流;根据所述步骤序号,查询所述历史日志流中是否包括所述写操作的日志;在所述历史日志流中包括所述写操作的日志的情况下,将所述写操作的日志的序列号,确定为所述有状态的服务器无感知函数的内部序列号;在所述历史日志流中不包括所述写操作的日志的情况下,在所述外部存储节点中写入新版本的目标对象,并根据所述新版本的目标对象的版本号和所述步骤序号,通过条件记录接口判断是否记录所述写操作的日志;在所述条件记录接口的判断结果为记录所述写操作的日志的情况下,对所述写操作的日志进行记录,并将所述写操作的日志的序列号确定为所述有状态的服务器无感知函数的内部序列号;在所述条件记录接口的判断结果为不记录所述写操作的日志的情况下,输出错误信息。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述有状态的服务器无感知函数调用其它有状态的服务器无感知函数的情况下,将所述有状态的服务器无感知函数的步骤序号增加1,并获取所述有状态的服务器无感知函数的标识;获取所述其它有状态的服务器无感知函数的标识;根据所述有状态的服务器无感知函数的标识,从所述日志存储节点中获取所述有状态的服务器无感知函数对应的历史日志流;根据所述步骤序号,查询所述历史日志流中是否包括当前调用日志;在所述历史日志流中包括所述当前调用日志的情况下,获取所述当前调用日志中记录的所述其它有状态的服务器无感知函数的执行结果,并将所述当前调用日志的序列号确定为所述有状态的服务器无感知函数的内部序列号;在所述历史日志流中不包括所述当前调用日志的情况下,重新调用所述其它有状态的
服务器无感知函数,并获取所述其它有状态的服务器无感知函数返回的执行结果,根据所述执行结果和所述步骤序号,通过条件记录接口判断是否记录所述当前调用日志;在所述条件记录接口的判断结果为记录所述当前调用日志的情况下,对所述当前调用日志进行记录,并将所述当前调用日志的序列号确定为所述有状态的服务器无感知函数的内部序列号;在所述条件记录接口的判断结果为不记录所述当前调用日志的情况下,输出错误信息。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:在执行所述有状态的服务器无感知函数之前,获取所述有状态的服务器无感知函数的标识,以及对所述有状态的服务器无感知函数的步骤序号进行初始化,得到初始化步骤序号;根据所述有状态的服务器无感知函数的标识,查询日志存储节点中是否存在所述有状态的服务器无感知函数的日志;在所述日志存储节点中存在所述有状态的服务器无感知函数的日志的情况下,将所述有状态的服务器无感知函数的日志中,序列号最小的日志确定为初始化日志;在所述日志存储节点中不存在所述有状态的服务器无感知函数的日志的情况下,根据所述初始化步骤序号,生成所述初始化日志;将所述初始化日志的序列号,确定为所述有状态的...

【专利技术属性】
技术研发人员:金鑫刘譞哲祁晟
申请(专利权)人:北京大学
类型:发明
国别省市:

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

1