一种资源分配的方法、终端、服务器及存储介质

文档序号:955611 发布日期:2020-10-30 浏览:5次 >En<

阅读说明:本技术 一种资源分配的方法、终端、服务器及存储介质 (Resource allocation method, terminal, server and storage medium ) 是由 涂晓强 于 2020-07-23 设计创作,主要内容包括:本发明实施例涉及计算机技术领域,公开了一种资源分配的方法、终端、服务器及存储介质。本发明中资源分配的方法,应用于第一终端,包括:获取第二终端生成加密数据的第一时长;根据第一时长,确定第二终端待获得的资源数值,以供第一终端和第二终端所在资源网络根据资源数值为第二终端分配资源。使得可以更加合理的为第二终端分配资源。(The embodiment of the invention relates to the technical field of computers, and discloses a resource allocation method, a terminal, a server and a storage medium. The resource allocation method in the invention is applied to a first terminal and comprises the following steps: acquiring a first time length for generating encrypted data by a second terminal; and determining a resource value to be obtained by the second terminal according to the first duration, so that the resource network where the first terminal and the second terminal are located can distribute resources for the second terminal according to the resource value. So that the resources can be more reasonably allocated to the second terminal.)

一种资源分配的方法、终端、服务器及存储介质

技术领域

本发明实施例涉及计算机技术领域,特别涉及一种资源分配的方法、终端、服务器及存储介质。

背景技术

目前在对资源进行分配的过程中,通常是将固定数值的资源优先分配最先满足条件的终端,也就是越快达到预设条件的终端最先得到资源,而在相同时间内,计算能力高的终端达到预设条件的次数越多,得到的资源也就越多,其中,预设条件可以根据实际需要进行设置。例如,预设条件可以是加密哈希值小于预设值。

发明人发现相关技术中至少存在如下问题:为了快速地达到预设条件,需要终端具备更好的综合能力,而待分配的资源是有限的,随之终端的综合能力的提高,预设条件也变得越来越苛刻,导致了终端不断提高综合能力的恶性循环;综合能力的不断提升,终端的价格也越来越昂贵,对电力需求度也越来越高,对资源造成了极大的浪费。

发明内容

本发明实施方式的目的在于提供一种资源分配的方法、终端、服务器及存储介质,使得可以更加合理的为第二终端分配资源。

为解决上述技术问题,本发明的实施方式提供了一种资源分配的方法,应用于第一终端,包括:获取第二终端生成加密数据的第一时长;根据第一时长,动态确定第二终端待获得的资源数值,以供第一终端和第二终端所在资源网络根据资源数值为第二终端分配资源。

本发明的实施方式还提供了一种资源分配的方法,包括:应用于第一终端和第二终端所在的资源网络,该方法包括:获取第二终端待获得的资源数值,资源数值是由第一终端根据第二终端生成加密数据的第一时长确定;根据资源数值,为第二终端分配资源。

本发明的实施方式还提供了一种终端,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述应用于第一终端的资源分配的方法。

本发明的实施方式还提供了一种服务器,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行应用于资源网络的资源分配的方法。

本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现应用于第一终端的资源分配的方法,或者实现应用于资源网络的资源分配的方法。

本发明实施方式相对于现有技术而言,获取第二终端生成加密数据的第一时长,根据该第一时长,动态确定第二终端待获得的资源数值,以供资源网络根据确定的资源数值为第二终端分配资源;由第一终端根据第一时长动态确定第二终端待获得的资源数值,而不是在第二终端生成加密数据后为该第二终端分配固定数值的资源,使得第二终端在生成加密数据后得到的资源不确定,也就是说即使第二终端提高了综合能力,与其他终端相比,在相同时间内可以多次生成加密数据,但是由于每次生成加密数据后得到的资源不固定,使得第二终端分配到的资源不确定,降低了用户提高终端的综合能力的动力,减少了终端消耗不必要的计算资源,同时也减小了电力的不断消耗。

另外,根据第一时长,确定第二终端待获得的资源数值,包括:获取生成加密数据的标准时长;根据第一时长、标准时长以及预设的资源分配策略,确定第二终端待获得的资源数值,资源分配策略包括:多个第一时长对应的资源数值的期望与标准时长对应的资源数值相匹配。资源分配策略采用,多个第一时长对应的资源数值的期望与标准时长对应的资源数值相匹配,确保了总的资源数值不变。

另外,资源分配策略还包括:资源数值的预设范围内,第二终端待获得的资源数值随着第一时长增大而增大。限制资源数值的范围,使得随着第一时长的增加,第二终端待获得的资源数值不是无限增加,从而可以确保有足够的资源进行分配;同时由于第二终端待获得的资源数值随着第一时长增大而增大,使得最快生成加密数据的终端获得的资源反而越少,从而进一步降低了用户提高终端计算能力的动力,进而避免出现浪费计算资源和电力资源的问题。

另外,在根据第一时长,动态确定第二终端待获得的资源数值之前,方法还包括:对第二终端生成的加密数据进行验证;若确定加密数据合法,则确定执行根据第一时长,动态确定第二终端待获得的资源数值的步骤。在加密数据合法的情况下,动态确定第二终端待获得的资源数值,可以减少不必要的资源浪费。

另外,资源分配策略表示为:R(t)=N*2/(1+e-(t-T)),其中,R表示第二终端待获得的资源数值,N表示标准资源数值,t表示第一时长,T表示标准时长。资源分配策略的具体实现方式。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1是根据本发明第一实施例提供的一种资源分配的方法的流程图;

图2是根据本发明第一实施例提供的一种资源分配策略的表达式的图形示意图;

图3是根据本发明第二实施例提供的一种资源分配的方法的流程图;

图4是根据本发明第二实施例提供的一种资源网络的示意图;

图5是根据本发明第三实施例提供的一种资源分配的方法的流程图;

图6是根据本发明第四实施例提供的一种资源分配的方法的流程图;

图7是根据本发明第五实施例提供的一种终端的结构框图;

图8是根据本发明第六实施例提供的一种服务器的结构框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。

以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。

发明人发现目前资源网络中,对资源分配时,通常只要终端达到资源分配条件后,就按照固定的资源数值为达到资源分配条件的终端分配资源。例如,在分配存储资源,通常是哪一个终端占用计算资源越多,分配的存储资源就越多,这导致用户提高运算速度以便抢占更多存储资源,而其他终端运算速度差的终端存在分配不到任何资源的情况。再如,在区块链中,最快生成区块的终端,最先得到资源;由于最快生成区块的终端,最先得到资源,也就是说在相同时间段内,生成区块的速度越快,得到的资源就越多,这导致用户不断更新终端的计算能力,以提高生成区块的速度,高计算能力的资源将消耗大量的电力资源。

本发明的第一实施方式涉及一种资源分配的方法。该资源分配的方法应用于第一终端,该资源分配的方法具体流程如图1所示。

步骤101:获取第二终端生成加密数据的第一时长。

具体的说,待分配的资源类型可以是资源网络的传输资源、存储资源、计算资源、收益资源等等。资源网络可以是云端网络,还可以区块链网络。第一终端和第二终端可以是电脑设备、ASIC设备、FPGA设备、服务器等。资源网络中的生成了加密数据的终端被作为第二终端,而获取了第一时长的终端被作为第一终端,也就是说,第一终端和第二终端是相对,第一终端和第二终端的身份随着各自的操作而变化。

由于待分配的资源是有限的,为了确保每个终端的操作都是诚实可信的操作,第二终端可以对每个操作或数据进行加密处理,生成加密数据,从而使得整个资源网络的安全。

本示例中采用区块链网络。区块链(block chain):是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块,每个区块都包含一个时间戳和一个与前一区块的链接。狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本,即区块链中的数据一旦记录下来将不可逆。

随着去中心化概念的不断深入,区块链技术也在很多场景中应用,以提高整个网络的安全性。目前采用区块链分配资源的过程为:区块链中的一个节点收集全网一定数量的交易数据后,并对收集到的交易进行打包,其中,一条交易数据的占用的空间大小为1KB以下,一个包的容量不超过1MB,即一个包可以容纳约1千条交易数据。在包中加入一定的头结构及一个随机数到包中,随后对上述的包进行哈希计算,如果这个哈希结果符合预设条件,则该节点将符合预设条件的包进行全网的广播,被广播的包即为一个区块。其他节点收到广播后会对该区块进行验证。当认可该区块的节点数大于预设比例的节点数时,该区块链网络将会为生成该区块的节点分配固定数值的资源。

例如,区块链中的若要求计算的哈希结果小于的32字节的预设数值,如果得到的哈希值大于或等于预设数值则生成一个新的随机数后重新计算哈希;如第504282号区块,它的哈希值为0x00000000000000000035e78d50034f5264c2d71524effdc6dd27d7ce6d907a9f。也即前面9个字节都要求为0才能满足要求,初略估计每次尝试有的机会能够满足此要求,概率非常低,故需要进行大量计算,才能生成加密数据。

本示例中,第二终端生成的加密数据即为区块链网络中的一个区块,第二终端生成加密数据后将该加密数据进行全网广播,第一终端获取该加密数据,可以根据获取该加密数据的时间以及上一次获取加密数据的时间,确定该第二终端生成加密数据的第一时长。可以理解的是,该第一时长也可以是第二终端广播时发送至第一终端。

步骤102:根据第一时长,动态确定第二终端待获得的资源数值,以供第一终端和第二终端所在资源网络根据资源数值为第二终端分配资源。

在一个例子中,获取生成加密数据的标准时长;根据第一时长、标准时长以及预设的资源分配策略,确定第二终端待获得的资源数值,资源分配策略包括:多个第一时长对应的资源数值的期望与标准时长对应的资源数值相匹配。

具体的说,资源网络中预先设置有生成加密数据的标准时长,例如,在区块链网络中,可以设置每个区块生成的间隔时长T,T即为预设的标准时长。该资源网络还可以预先设置资源分配策略,资源分配策略是基于总资源不变的约束条件确定的,例如,假设有P次生成了加密数据,总的资源数值为P*N,N为每次生成加密数据的终端分配的固定的资数值;而采用本示例中的方式,每个第一时长对应的资源数值不固定,可以使用数学期望的方式确保总的资源数值不变,即得到至少两个以上生成加密数据的时长对应的资源数值的期望与标准时长对应的资源数值相等。

第一终端可以从资源网络中获取该标准时长以及预设的资源分配策略,按照该资源分配策略,动态确定该第二终端待获得的资源数值。

在一个例子中,资源分配策略还包括:在资源数值的预设范围内,第二终端待获得的资源数值随着第一时长增大而增大。

具体的说,预设的资源分配策略在满足多个第一时长对应的资源数值的期望与标准时长对应的资源数值相匹配的情况下,还可以满足在资源数值的预设范围内,第二终端待获得的资源数值随着第一时长增大而增大。资源数值的预设范围应当小于总资源的数值,资源数值的预设范围可以根据需要进行设置,例如,标准时长对应的资源数值为N,那么资源数值的预设范围的最大值可以为2N;资源数值的预设范围的最小值可以为0;即资源数值的预设范围为:[0,2N]。在该资源数值的预设范围内,随着第一时长的增长,第二终端待获得的资源数值也随着增长。例如,该资源分配策略可以表示为:R(t)=N*2/(1+e-(t-T)),其中,R表示第二终端待获得的资源数值,N表示标准资源数值,t表示第一时长,T表示标准时长。

该资源分配策略的表达式的示意图如图2所示,R(t)表示资源数值,N为标准资源数值,即标准时长对应的资源数值。采用该表达方式R(t),使得当t的时长大于T时,第二终端待获得的资源数值随着t的增加而增加,同时从图2可以看出,由于少于和多于N的概率相同,即第一时长小于T或大于T的概率相同,第一时长增加和减少时对应的资源数值的概率互相抵消,满足了多个第一时长对应的资源数值的期望与标准时长对应的资源数值相匹配的约束条件。且在t无限大时,对应的资源数值无限接近于2N,使得在第一时长无限大时,第一时长对应的资源数值不是无限大;从而确保每个第二终端分配到的资源在合理范围之内。

值得一提的是,限制资源数值的范围,使得随着第一时长的增加,第二终端待获得的资源数值不是无限增加,从而可以确保有足够的资源进行分配;同时由于第二终端待获得的资源数值随着第一时长增大而增大,使得最快生成加密数据的终端获得的资源反而越少,从而进一步降低了用户提高终端计算能力的动力,进而避免出现浪费计算资源和电力资源的问题。

第一终端将确定的资源数值上传至资源网络,资源网络可以根据获取的资源数值,为第二终端分配对应的资源。

可以理解的是,第一终端的数目可以有多个,每个第一终端各自将确定的资源数值上传资源网络,资源网络可以从接收到的多个资源数值中任取一个资源数值,并按照选取的资源数值为第二终端分配资源。

本发明实施方式相对于现有技术而言,获取第二终端生成加密数据的第一时长,根据该第一时长,动态确定第二终端待获得的资源数值,以供资源网络根据确定的资源数值为第二终端分配资源;由第一终端根据第一时长动态确定第二终端待获得的资源数值,而不是在第二终端生成加密数据后为该第二终端分配固定数值的资源,使得第二终端在生成加密数据后得到的资源不确定,也就是说即使第二终端提高了综合能力,与其他终端相比,在相同时间内可以多次生成加密数据,但是由于每次生成加密数据后得到的资源不固定,使得第二终端分配到的资源不确定,降低了用户提高终端的综合能力的动力,减少了终端消耗不必要的计算资源,同时也减小了电力的不断消耗。

本发明的第二实施方式涉及一种资源分配的方法。第二实施方式是对第一实施方式的进一步改进,主要改进之处在于:在本发明第二实施方式中,在根据第一时长,动态确定第二终端待获得的资源数值之前,对第二终端生成的加密数据进行验证。该资源分配的方法的具体流程如图3所示。

步骤201:获取第二终端生成加密数据的第一时长。

该步骤与第一实施例中的步骤101大致相同,此处将不在赘述。

步骤202:验证第二终端生成的加密数据是否合法,若确定该加密数据合法,则执行步骤203,否则,结束整个流程。

具体的说,为了资源分配的合法,第一终端可以对该加密数据进行合法性验证,验证的方式可以有多种,可以检测该加密数据是否符合资源网络预设的加密规则,如:在区块链中,第一终端检测接收到的区块是否符合区块链中预设的区块规则;若接收到的区块满足预设的区块规则,则确定接收到的区块为合法区块。若确定该加密数据合法,则执行步骤203,若确定该加密数据不合法,那么第一终端可以直接结束整个流程;第一终端还可以在结束流程之前,广播该加密数据为非法加密数据的信息。

步骤203:根据第一时长,动态确定第二终端待获得的资源数值的步骤。

该步骤与第一实施例中的步骤102大致相同,此处将不在赘述。

需要说明的是,若第一终端的数目有多个,每个第一终端获取到第二终端广播的加密数据的时间可能不同,导致每个第一终端获取的第一时长不相同,确定的第二终端待获得的资源数值也不同,资源网络为了保证为第二终端分配资源的准确性,可以计算所有上传的资源数值的平均值,按照该平均值为第二终端分配资源。例如,如图4所示,资源网络中,包括第二终端和n+2个第一终端,第一终端1确定第二终端的资源数值R1=N*2/(1+e-(t1-T)),其中t1为第一终端1确定的第一时长。第一终端2确定第二终端的资源数值R2=N*2/(1+e-(t2-T)),若有n个第一终端验证该加密数据为合法数据,将各自资源数值上传了资源网络,第一终端n+1和第一终端n+2验证该加密数据为不合法数据,验证合法的第一终端的数量超过一半比例,资源网络确定为该第二终端分配资源,且确定第二终端获得资源数值为R=(R1+R2+…+Rn)/n;资源网络按照R为第二终端分配资源。

本实施方式提供的一种资源分配的方法,在确定第二终端待获得的资源数值之前,对该第二终端生成的加密数据进行验证,若加密数据不合法,则不再确定该第二终端待获得的资源数值,减少第一终端不必要的资源浪费,提高资源分配的合法性,提高资源的利用率。

上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。

本发明第三实施方式涉及一种资源分配的方法,该资源分配的方法的应用于第一终端和第二终端所在的资源网络,具体流程如图5所示。

步骤301:获取第二终端待获得的资源数值,资源数值是由第一终端根据第二终端生成加密数据的第一时长确定。

具体的说,资源网络包括:第一终端和第二终端;第一终端和第二终端可以是电脑设备、ASIC设备、FPGA设备等。资源网络中的生成了加密数据终端被作为第二终端,而获取了第一时长的终端被作为第一终端,也就是说,第一终端和第二终端是相对,第一终端和第二终端的身份随着各自的操作而变化。

由于待分配的资源是有限的,为了确保每个终端的操作都是诚实可信的操作,第二终端可以对每个操作或数据进行加密处理,生成加密数据,从而使得整个资源网络的安全,本示例中采用区块链网络。

第二终端生成的加密数据即为区块链网络中的一个区块,第二终端生成加密数据后将该加密数据进行全网广播,第一终端获取该加密数据,可以根据获取该加密数据的时间以及上一次获取加密数据的时间,确定该第二终端生成加密数据的第一时长。可以理解的是,该第一时长也可以是第二终端广播时发送至第一终端。第一终端根据该第一时长,确定该第二终端待获得的资源数值。第一终端可以将该确定的资源数值上传资源网络,该资源网络可以接收该第一终端上传的资源数值;资源网络还可以主动获取第一终端确定的资源数值。

步骤302:根据资源数值,为第二终端分配资源。

在一个例子中,在接收到每个第一终端确定的资源数值后,按照任意一个确定的资源数值为第二终端分配资源

具体的说,第一终端的数目可以有多个,每个第一终端各自将确定的资源数值上传资源网络,资源网络可以从接收到的多个资源数值中任取一个资源数值,并按照选取的资源数值为第二终端分配资源。

不难发现,本实施方式为与第一实施方式相对应的资源网络的实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。

本发明第四实施方式涉及一种资源分配的方法。第四实施方式与第三实施方式大致相同,主要区别之处在于:本实施方式中根据资源数值,为第二终端分配资源的过程不同。该资源分配的方法的具体流程如图6所示。

步骤401:获取第二终端待获得的资源数值。

该步骤与第三实施方式中的301大致相同,此处将不再赘述。

步骤402:确定所有上传的资源数值对应的平均值。

具体的说,若第一终端的数目有至少两个,每个第一终端获取到第二终端广播的加密数据的时间可能不同,导致每个第一终端获取的第一时长不相同,确定的第二终端待获得的资源数值也不同,资源网络为了保证为第二终端分配资源的准确性,可以计算所有上传的资源数值的平均值,按照该平均值为第二终端分配资源。例如,资源网络中,包括第二终端和n+2个第一终端,第一终端1确定第二终端的资源数值R1=N*2/(1+e-(t1-T)),其中t1为第一终端1确定的第一时长。第一终端2确定第二终端的资源数值R2=N*2/(1+e-(t2-T)),若有n个第一终端验证该加密数据为合法数据,将各自资源数值上传了资源网络,第一终端n+1和第一终端n+2验证该加密数据为不合法数据,验证合法的第一终端的数量超过一半比例,资源网络确定为该第二终端分配资源,且确定第二终端获得资源数值为R=(R1+R2+…+Rn)/n。

步骤403:按照平均值,为第二端分配资源。

由于第二实施方式与本实施方式相互对应,因此本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,在第二实施方式中所能达到的技术效果在本实施方式中也同样可以实现,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。

本发明第五实施方式涉及一种终端,该终端50的结构框图如7所示,包括:至少一个处理器501;以及,与至少一个处理器501通信连接的存储器502;其中,

存储器502存储有可被至少一个处理器501执行的指令,指令被至少一个处理器501执行,以使至少一个处理器501能够执行第一实施方式或第二实施方式中的资源分配的方法。

本发明第六实施方式涉及一种服务器,服务器60的结构框图如图8所示,包括:至少一个处理器601;以及,与至少一个处理器601通信连接的存储器602;其中,存储器602存储有可被至少一个处理器601执行的指令,指令被至少一个处理器601执行,以使至少一个处理器601能够执行第三实施方式或第四实施方式中的资源分配的方法。

第五实施方式或第六实施方式中的存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路链接在一起。总线还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。

处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,***接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。

本发明第七实施方式涉及一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现第一实施方式或第二实施方式的资源分配的方法,或者实现第三实施方式或第四实施方式中的资源分配的方法。

本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:具有防水功能的POE交换机

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!