一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于云平台的节点调度方法、装置及电子设备和存储介质与流程

2022-02-22 07:57:08 来源:中国专利 TAG:


1.本技术涉及云平台技术领域,更具体地说,涉及一种基于云平台的节点调度方法、装置及一种电子设备和一种计算机可读存储介质。


背景技术:

2.目前基于计算和监控负载的调度已有一些相关技术实现,例如:一种雾计算负载均衡调度系统及方法,主要是负载监控代理模块嵌于雾节点中,负责定时收集所在雾节点的负载情况,并发送至区域负载监控模块,负载监控模块负责接收本区域所有雾节点的负载情况,并上报调度模块,调度模块负责接收雾节点负载情况,计算雾节点负载度,将负载度结合雾节点数据进行分组存储,再根据雾节点负载度调整调度策略,将调度策略按存储分组下发至对应调度执行模块,调度执行模块负责接根据接收的调度策略调整调度优先级,优先调用空闲雾节点为用户服务。但是,上述方案存在以下技术缺陷:虽然提到使用了监控模块和监控代理模块,但本质上为其调度系统中的子系统和模块,在云平台项目的实际环境中,已有成熟的监控系统,如使用该方案,则会造成监控数据来源和处理方式不一致或功能冗余性。同时,该调度系统内聚了太多的非调度相关的辅助模块如监控等,监控和调度完全不同的功能强耦合在一起,导致调度系统臃肿且不易扩展和维护,系统部署复杂。
3.因此,如何实现节点调度与监控系统的解耦合是本领域技术人员需要解决的技术问题。


技术实现要素:

4.本技术的目的在于提供一种基于云平台的节点调度方法、装置及一种电子设备和一种计算机可读存储介质,既实现了节点调度与监控系统的解耦合,又实现了监控资源数据的重复利用,避免了监控资源数据的重复处理。
5.为实现上述目的,本技术提供了一种基于云平台的节点调度方法,包括:
6.按照预设周期从云平台的监控系统中获取监控资源数据;
7.按照预设数据结构将所述监控资源数据转换为负载指标,并基于所述负载指标更新本地已缓存的负载指标;其中,每条所述负载指标包括节点、指标项和具体的指标值;
8.根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数,并基于所有节点对应的负载分数确定当前作业的最佳调度节点。
9.其中,所述指标项包括cpu利用率、gpu利用率、gpu显存利用率、gpu状态、网卡速率、磁盘读写速度和节点状态中任一项或任几项的组合。
10.其中,所述基于所述负载指标更新本地已缓存的负载指标,包括:
11.基于所述监控资源数据更新本地缓存的节点列表;
12.判断本地缓存的节点列表中是否存在所述负载指标中的节点;
13.若是,则利用所述负载指标更新本地已缓存的所述节点的负载指标;
14.若否,则删除所述节点的负载指标。
15.其中,所述利用所述负载指标更新本地已缓存的所述节点的负载指标之后,还包括:
16.将缓存更新标识设置为是;
17.相应的,所述根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数之前,还包括:
18.判断所述缓存更新标识是否为是;
19.若是,则执行所述根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数的步骤;
20.若否,则直接执行所述基于所有节点对应的负载分数确定当前作业的最佳调度节点的步骤。
21.其中,所述按照预设周期从云平台的监控系统中获取监控资源数据之前,还包括:
22.获取云平台的节点列表,并缓存至本地;
23.从所述监控系统中获取已存在的历史监控资源数据,并按照预设数据结构将所述历史监控资源数据转换为历史负载指标;
24.若所述节点列表中存在所述历史负载指标中的节点,则存储所述节点对应的历史负载指标;
25.若所述节点列表中不存在所述历史负载指标中的节点,则删除所述节点对应的历史负载指标。
26.其中,所述基于所有节点对应的负载分数确定当前作业的最佳调度节点,包括:
27.若所述当前作业需要的资源量大于或等于预设值,则将负载分数最小的节点确定为所述当前作业的最佳调度节点;
28.若所述当前作业需要的资源量小于所述预设值,则将负载分数最大的节点确定为所述当前作业的最佳调度节点。
29.其中.所述预设调度算法具体为:
[0030][0031]
其中,object(n,t)为负载分数,perfdata(i,j)为第i个监控项在第j个时间点的具体的指标值,ω(i)为第i个监控项的权重值,1≤i≤n,1≤j≤t,n为监控项的总数,t为时间点的总数。
[0032]
为实现上述目的,本技术提供了一种基于云平台的节点调度装置,包括:
[0033]
第一获取模块,用于按照预设周期从云平台的监控系统中获取监控资源数据;
[0034]
第一转换模块,用于按照预设数据结构将所述监控资源数据转换为负载指标,并基于所述负载指标更新本地已缓存的负载指标;其中,每条所述负载指标包括节点、指标项和具体的指标值;
[0035]
确定模块,用于根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数,并基于所有节点对应的负载分数确定当前作业的最佳调度节点。
[0036]
为实现上述目的,本技术提供了一种电子设备,包括:
[0037]
存储器,用于存储计算机程序;
[0038]
处理器,用于执行所述计算机程序时实现如上述基于云平台的节点调度方法的步
骤。
[0039]
为实现上述目的,本技术提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述基于云平台的节点调度方法的步骤。
[0040]
通过以上方案可知,本技术提供的一种基于云平台的节点调度方法,包括:按照预设周期从云平台的监控系统中获取监控资源数据;按照预设数据结构将所述监控资源数据转换为负载指标,并基于所述负载指标更新本地已缓存的负载指标;其中,每条所述负载指标包括节点、指标项和具体的指标值;根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数,并基于所有节点对应的负载分数确定当前作业的最佳调度节点。
[0041]
本技术提供的节点调度方法,从云平台原有监控系统中获取监控资源数据,既实现了节点调度与监控系统的解耦合,又实现了监控资源数据的重复利用,避免了监控资源数据的重复处理。同时,本技术设计了负载指标的缓存与更新机制和负载指标的调度流程,进而基于负载分数确定当前作业的最佳调度节点,使得集群调度器能够高效执行监控负载调度策略的最优化处理,适应解决了云平台和集群系统对负载均衡和资源碎片化等负载场景的调度需求问题。本技术还公开了一种基于云平台的节点调度装置及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
[0042]
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本技术。
附图说明
[0043]
为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
[0044]
图1为根据一示例性实施例示出的一种基于云平台的节点调度方法的流程图;
[0045]
图2为根据一示例性实施例示出的一种基于云平台的节点调度系统的结构图;
[0046]
图3为根据一示例性实施例示出的另一种基于云平台的节点调度方法的流程图;
[0047]
图4为根据一示例性实施例示出的一种基于云平台的节点调度装置的结构图;
[0048]
图5为根据一示例性实施例示出的一种电子设备的结构图。
具体实施方式
[0049]
下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。另外,在本技术实施例中,“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
[0050]
本技术实施例公开了一种基于云平台的节点调度方法,既实现了节点调度与监控系统的解耦合,又实现了监控资源数据的重复利用,避免了监控资源数据的重复处理。
[0051]
参见图1,根据一示例性实施例示出的一种基于云平台的节点调度方法的流程图,如图1所示,包括:
[0052]
s101:按照预设周期从云平台的监控系统中获取监控资源数据;
[0053]
由于云平台服务已有成熟和完备的监控系统,因此本实施例可以通过监控系统已有数据接口采集获取集群的监控资源数据。参见图2,图2示出了根据一示例性实施例示出的一种基于云平台的节点调度系统,为满足调度器对负载数据的高性能性要求和降低调度器和监控系统的耦合性,设计了负载监控api-server这个api中间件装置。负载监控api-server装置通过云平台原有的监控系统的api接口获取监控数据,并同步向负载统计管理装置推送更新资源负载数据。可见,本实施例的负载调度流程非侵入式设计,而是基于云平台已有的监控系统和调度器接口,进行功能扩展的插件式架构设计,适用性更好。
[0054]
s102:按照预设数据结构将所述监控资源数据转换为负载指标,并基于所述负载指标更新本地已缓存的负载指标;其中,每条所述负载指标包括节点、指标项和具体的指标值;
[0055]
在本步骤中,图2中的负载统计管理装置更新处理负载指标,为调度器的负载调度算法提供输入参数。在具体实施中,通过监听实时获取到负载监控api-server装置发送的负载数据更新,进行本地缓存监控数据的增删改处理。
[0056]
在具体实施中,负载统计管理装置对获取到的监控资源数据按照预设数据结构映射为负载指标,该负载指标包括节点、指标项和具体的指标值,此处的指标项包括cpu利用率、gpu利用率、gpu显存利用率、gpu状态、网卡速率、磁盘读写速度和节点状态等,在此不进行具体限定。数据结构可以为:[节点名称]-[资源类别]-[资源类型]-[指标项],例如:节点1-计算资源-gpu-利用率。
[0057]
可以理解的是,由于不同资源类型数据的特征和阈值范围不一样,可以对获取到的监控资源数据进行预处理,包括类型转换处理(即获取到的监控资源数据根据指标项的不同转换为数值型或布尔型或文本描述型的形式)、归一化处理、异常值处理等。
[0058]
另外,负载统计管理装置更新处理负载指标,为调度器的负载调度算法提供输入参数。在具体实施中,通过监听实时获取到api-server装置发送的负载数据更新,进行本地缓存监控数据的增删改处理、对接口异常等处理。进一步的,负载统计管理装置实时通知调度器装置的负载调度策略子模块,当前最新的缓存负载指标。
[0059]
s103:根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数,并基于所有节点对应的负载分数确定当前作业的最佳调度节点。
[0060]
由于负载指标基于监控系统的时间序列数据得到的,因此调度器获取节点的负载指标时间序列数据,例如:gpu利用率指标过去5秒钟[t0,t1,t2,t3,t4]的历史数据:gpu_utility[t0:t5]:[data(t0),data(t1),data(t2),data(t3),data(t4)]。
[0061]
在本步骤中,调度器根据资源负载指标,执行负载调度策略流程,将平台作业绑定到最佳节点,并为作业优先分配负载合适的资源,即根据所有节点对应的更新后的负载指标时间序列数据基于预设调度算法计算所有节点对应的负载分数,以确定最佳调度节点。
[0062]
优选的,所述预设调度算法具体为:
[0063][0064]
其中,object(n,t)为负载分数,perfdata(i,j)为第i个监控项在第j个时间点的具体的指标值,ω(i)为第i个监控项的权重值,其为预设参数配置,优选考虑的指标项可以设置更大的权重值,1≤i≤n,1≤j≤t,n为监控项的总数,与调度场景需要的监控指标集合有关,t为时间点的总数,即上述负载指标时间序列数据中时间序列点的数量。
[0065]
作为一种优选实施方式,所述基于所有节点对应的负载分数确定当前作业的最佳调度节点,包括:若所述当前作业需要的资源量大于或等于预设值,则将负载分数最小的节点确定为所述当前作业的最佳调度节点;若所述当前作业需要的资源量小于所述预设值,则将负载分数最大的节点确定为所述当前作业的最佳调度节点。在具体实施中,预设调度算法能够支持负载均衡和资源碎片最小化的不同场景。负载均衡场景即为资源量需求较大的作业分配负载较小的节点,资源碎片最小化节点即将资源量需求较小的作业分配负载较大的同一节点,使得其他节点的负载较小,可以实现其他资源量需求较大的作业的调度。可见,预设调度算法可以根据不同类型作业(如cpu计算密集型、gpu计算密集型、网络密集型、io密集型)考虑不同的资源负载组合和算法性能。
[0066]
在本实施例的基础上,作为一种优选实施方式,所述利用所述负载指标更新本地已缓存的所述节点的负载指标之后,还包括:将缓存更新标识设置为是;相应的,所述根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数之前,还包括:判断所述缓存更新标识是否为是;若是,则执行所述根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数的步骤;若否,则直接执行所述基于所有节点对应的负载分数确定当前作业的最佳调度节点的步骤。在具体实施中,只有当本地缓存的负载指标更新后,重新计算所有节点的负载分数,本地缓存的的负载指标未更新时,使用各节点的历史负载分数直接确定最佳调度节点,提高了节点调度的效率。
[0067]
本技术实施例提供的节点调度方法,从云平台原有监控系统中获取监控资源数据,既实现了节点调度与监控系统的解耦合,又实现了监控资源数据的重复利用,避免了监控资源数据的重复处理。同时,本技术实施例设计了负载指标的缓存与更新机制和负载指标的调度流程,进而基于负载分数确定当前作业的最佳调度节点,使得集群调度器能够高效执行监控负载调度策略的最优化处理,适应解决了云平台和集群系统对负载均衡和资源碎片化等负载场景的调度需求问题。
[0068]
本技术实施例公开了一种基于云平台的节点调度方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
[0069]
参见图3,根据一示例性实施例示出的另一种基于云平台的节点调度方法的流程图,如图3所示,包括:
[0070]
s201:获取云平台的节点列表,并缓存至本地;
[0071]
s202:从所述监控系统中获取已存在的历史监控资源数据,并按照预设数据结构将所述历史监控资源数据转换为历史负载指标;
[0072]
s203:判断所述节点列表中存在所述历史负载指标中的节点;若是,则进入s204;若否,则进入s205;
[0073]
s204:存储所述节点对应的历史负载指标;
[0074]
s205:删除所述节点对应的历史负载指标;
[0075]
在本实施例中,负载统计管理装置获取云平台集群的节点列表,并缓存至本地,从监控系统中获取已存在的历史监控资源数据,并按照预设数据结构将所述历史监控资源数据转换为历史负载指标,如果节点列表中存在历史负载指标中的节点,则根据该历史负载指标创建该节点对应的负载指标实例,如果节点列表中不存在历史负载指标中的节点,则删除该历史负载指标。
[0076]
s206:按照预设周期从云平台的监控系统中获取监控资源数据,并按照预设数据结构将所述监控资源数据转换为负载指标;
[0077]
s207:基于所述监控资源数据更新本地缓存的节点列表;
[0078]
s208:判断本地缓存的节点列表中是否存在所述负载指标中的节点;若是,则进入s209;若否,则进入s210;
[0079]
s209:利用所述负载指标更新本地已缓存的所述节点的负载指标;
[0080]
s210:删除所述节点的负载指标。
[0081]
在本实施例中,负载监控api-server装置预设周期时间到达或负载监控api-server装置资源更新事件到达时,从云平台的监控系统中获取监控资源数据,并按照预设数据结构将所述监控资源数据转换为负载指标。负载统计管理装置更新本地缓存的节点列表,如果节点列表中存在负载指标中的节点,则更新该节点对应的负载资源实例,如果节点列表中不存在负载指标中的节点,则将该节点对应的负载资源实例设置为无效,并标识该节点的负载指标项不执行负载调度。负载统计管理装置通知调度器,进行云平台集群负载指标的更新。
[0082]
下面对本技术实施例提供的一种基于云平台的节点调度装置进行介绍,下文描述的一种基于云平台的节点调度装置与上文描述的一种基于云平台的节点调度方法可以相互参照。
[0083]
参见图4,根据一示例性实施例示出的一种基于云平台的节点调度装置的结构图,如图4所示,包括:
[0084]
第一获取模块401,用于按照预设周期从云平台的监控系统中获取监控资源数据;
[0085]
第一转换模块402,用于按照预设数据结构将所述监控资源数据转换为负载指标,并基于所述负载指标更新本地已缓存的负载指标;其中,每条所述负载指标包括节点、指标项和具体的指标值;
[0086]
确定模块403,用于根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数,并基于所有节点对应的负载分数确定当前作业的最佳调度节点。
[0087]
本技术实施例提供的节点调度装置,从云平台原有监控系统中获取监控资源数据,既实现了节点调度与监控系统的解耦合,又实现了监控资源数据的重复利用,避免了监控资源数据的重复处理。同时,本技术实施例设计了负载指标的缓存与更新机制和负载指标的调度流程,进而基于负载分数确定当前作业的最佳调度节点,使得集群调度器能够高效执行监控负载调度策略的最优化处理,适应解决了云平台和集群系统对负载均衡和资源碎片化等负载场景的调度需求问题。
[0088]
在上述实施例的基础上,作为一种优选实施方式,所述指标项包括cpu利用率、gpu
利用率、gpu显存利用率、gpu状态、网卡速率、磁盘读写速度和节点状态中任一项或任几项的组合。
[0089]
在上述实施例的基础上,作为一种优选实施方式,所述第一转换模块402包括:
[0090]
转换单元,用于按照预设数据结构将所述监控资源数据转换为负载指标;
[0091]
第一更新单元,用于基于所述监控资源数据更新本地缓存的节点列表;
[0092]
第一判断单元,用于判断本地缓存的节点列表中是否存在所述负载指标中的节点;若是,则启动更新单元的工作流程;若否,则启动删除单元的工作流程;
[0093]
更新单元,用于利用所述负载指标更新本地已缓存的所述节点的负载指标;
[0094]
删除单元,用于删除所述节点的负载指标。
[0095]
在上述实施例的基础上,作为一种优选实施方式,所述更新单元具体为利用所述负载指标更新本地已缓存的所述节点的负载指标,并将缓存更新标识设置为是的单元;
[0096]
相应的,所述确定模块403包括:
[0097]
第二判断单元,用于判断所述缓存更新标识是否为是;若是,则启动计算单元的工作流程;若否,则启动确定单元的工作流程;
[0098]
计算单元,用于根据所有节点对应的更新后的负载指标基于预设调度算法计算所有节点对应的负载分数;
[0099]
确定单元,用于基于所有节点对应的负载分数确定当前作业的最佳调度节点。
[0100]
在上述实施例的基础上,作为一种优选实施方式,还包括:
[0101]
第二获取模块,用于获取云平台的节点列表,并缓存至本地;
[0102]
第二转换模块,用于从所述监控系统中获取已存在的历史监控资源数据,并按照预设数据结构将所述历史监控资源数据转换为历史负载指标;
[0103]
存储模块,用于当若所述节点列表中存在所述历史负载指标中的节点时,存储所述节点对应的历史负载指标;
[0104]
删除模块,用于当所述节点列表中不存在所述历史负载指标中的节点时,删除所述节点对应的历史负载指标。
[0105]
在上述实施例的基础上,作为一种优选实施方式,所述确定单元具体为当所述当前作业需要的资源量大于或等于预设值时,将负载分数最小的节点确定为所述当前作业的最佳调度节点;当所述当前作业需要的资源量小于所述预设值时,将负载分数最大的节点确定为所述当前作业的最佳调度节点。
[0106]
在上述实施例的基础上,作为一种优选实施方式,所述预设调度算法具体为:
[0107][0108]
其中,object(n,t)为负载分数,perfdata(i,j)为第i个监控项在第j个时间点的具体的指标值,ω(i)为第i个监控项的权重值,1≤i≤n,1≤j≤t,n为监控项的总数,t为时间点的总数。
[0109]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0110]
基于上述程序模块的硬件实现,且为了实现本技术实施例的方法,本技术实施例还提供了一种电子设备,图5为根据一示例性实施例示出的一种电子设备的结构图,如图5
所示,电子设备包括:
[0111]
通信接口1,能够与其它设备比如网络设备等进行信息交互;
[0112]
处理器2,与通信接口1连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的基于云平台的节点调度方法。而所述计算机程序存储在存储器3上。
[0113]
当然,实际应用时,电子设备中的各个组件通过总线系统4耦合在一起。可理解,总线系统4用于实现这些组件之间的连接通信。总线系统4除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线系统4。
[0114]
本技术实施例中的存储器3用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。
[0115]
可以理解,存储器3可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read-only memory)、可擦除可编程只读存储器(eprom,erasable programmable read-only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read-only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd-rom,compact disc read-only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic random access memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本技术实施例描述的存储器2旨在包括但不限于这些和任意其它适合类型的存储器。
[0116]
上述本技术实施例揭示的方法可以应用于处理器2中,或者由处理器2实现。处理器2可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器2中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器2可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器3,处理器2读取存储器3中的程序,结合其硬件完成前述方法的步骤。
[0117]
处理器2执行所述程序时实现本技术实施例的各个方法中的相应流程,为了简洁,
在此不再赘述。
[0118]
在示例性实施例中,本技术实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器3,上述计算机程序可由处理器2执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flash memory、磁表面存储器、光盘、或cd-rom等存储器。
[0119]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0120]
或者,本技术上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0121]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献