一种基于访问压力的区块链节点间负载均衡系统技术方案

技术编号:25446632 阅读:22 留言:0更新日期:2020-08-28 22:32
本发明专利技术公开了一种基于访问压力的区块链节点间负载均衡系统,用于解决现有区块链中单个区块链节点访问压力大时,对单个区块链节点造成击穿,使得区块链节点集群中会因为压力太大出现雪崩情况的问题,包括数据采集模块、服务器、数据分析模块和负载均衡模块;数据采集模块用于采集交易请求的消耗资源信息并将消耗资源信息发送至服务器内;数据分析模块用于获取服务器内存储的消耗资源信息并对消耗资源信息进行分析,负载均衡模块用于对交易请求进行负载均衡调节;本发明专利技术通过选中节点执行该交易请求,通过负载均衡模块对交易请求进行合理分配,使得整个区块链中的节点资源都得到高效使用。

【技术实现步骤摘要】
一种基于访问压力的区块链节点间负载均衡系统
本专利技术涉及计算机信息处理以及区块链
,具体为一种基于访问压力的区块链节点间负载均衡系统。
技术介绍
区块链节点通常指的是区块链网络中的计算机,也就是说任何连接到区块链网络的计算机(包括手机,矿机等)都称为节点;现有区块链中单个区块链节点访问压力大时,对单个区块链节点造成击穿,使得区块链节点集群中会因为压力太大出现雪崩情况。
技术实现思路
本专利技术的目的就在于为了解决现有区块链中单个区块链节点访问压力大时,对单个区块链节点造成击穿,使得区块链节点集群中会因为压力太大出现雪崩情况的问题,而提出一种基于访问压力的区块链节点间负载均衡系统;通过选中节点执行该交易请求,通过负载均衡模块对交易请求进行合理分配,使得整个区块链中的节点资源都得到高效使用。本专利技术的目的可以通过以下技术方案实现:一种基于访问压力的区块链节点间负载均衡系统,包括数据采集模块、服务器、数据分析模块和负载均衡模块;所述数据采集模块用于采集交易请求的消耗资源信息并将消耗资源信息发送至服务器内;所述数据分析模块用于获取服务器内存储的消耗资源信息并对消耗资源信息进行分析,具体分析步骤为:步骤一:设定交易请求记为Pi,i=1、……、n;设定交易请求执行消耗的内存占用值记为NjPi;交易请求执行消耗的CPU占用值为DjPi;j=1、……、n;j表示交易请求的执行次数;步骤二:将内存占用值和CPU占用值进行去量化处理并取其数值;利用公式获取得到交易请求的平均消耗值ZPi;其中,b1和b2均为预设比例系数;步骤三:数据分析模块将交易请求的平均消耗值发送至服务器内存储;所述负载均衡模块用于对交易请求进行负载均衡调节,具体调节步骤为:S1:用户通过客户端发送交易请求至负载均衡模块,负载均衡模块接收到交易请求后,将交易请求与服务器内存储的所有交易请求进行匹配得到对应交易请求的平均消耗值ZPa;a∈i,同时负载均衡模块生成节点分析指令;S2:负载均衡模块将节点分析指令发送至节点分析模块,节点分析模块分析后将区块链节点的节点执行值发送至负载均衡模块;S3:负载均衡模块将节点执行值大于平均消耗值ZPa的区块链节点标记为初选节点;设定初选节点为Jk,k为正整数;S4:负载均衡模块生成初选节点对应的访问指令并将其发送至节点统计模块,节点统计模块接收到初选节点对应的访问指令并进行处理得到初选节点的区块值并将区块值发送至负载均衡模块;S5:将初选节点的节点执行值标记为ZJk;将初选节点的区块值标记为QJk;将节点执行值和区块值进行去量化处理并取其数值;S6:利用公式FJk=ZJk×b3+QJk×b4-μ获取得到初选节点的节吻值FJk;其中,b3和b4均为预设比例系数,μ为误差修正因子,取值为2.3863;S7:选取节吻值最大的初选节点为该交易请求的选中节点,通过选中节点执行该交易请求。优选的,该系统还包括节点采集模块和节点分析模块,所述节点采集模块用于采集区块链节点的节点信息并将节点信息发送至节点分析模块;节点信息包括区块链节点的内存剩余值和CPU的实时剩余使用率;所述节点分析模块用于接收节点信息并进行节点信息分析,具体分析步骤为:SS1:节点分析模块接收到节点分析指令后,对节点信息进行分析,设定区块链节点的内存剩余值为D1;SS2:将CPU的实时剩余使用率进行统计,设定剩余使用率为Lm,m=0、……99;且Lm的取值范围为(0,1],统计剩余使用率出现的次数并标记为ELm;SS3:选取出现次数最大的剩余使用率,并将其标记为Lb,b∈m;SS4:将其它剩余使用率的次数进行求和得到总出现次数EZ;SS5:将内存剩余值、剩余使用率和剩余使用率进行去量化并取其数值,利用公式Z=D1×b5+Lb×b6-EZ×b7+λ获取得到区块链节点的节点执行值Z;其中,b5、b6和b7均为预设比例系数,λ为校正常数,取值为1.32;SS6:节点分析模块将节点执行值发送至负载均衡模块。优选的,所述消耗资源信息为交易请求执行时所消耗的资源,资源包括内存占用值和CPU占用值。优选的,步骤S4中所述的节点统计模块处理得到初选节点的区块值的具体处理步骤为:S41:获取初选节点的设备信息,设定所有的CPU型号均设定一个预设值,将设备信息内CPU型号与所有的CPU型号进行匹配获取得到对应的预设值,并标记为Y1Jk;S42:将设备信息内的购买时间与系统当前时间进行时间差计算获取得到设备的购买时长并标记为T1Jk,单位是天;S43:设定设备的额定内存为Y2Jk;设备的维修次数为Y3Jk;将预设值、购买时长、额定内存和维修次数进行去量化处理并取其数值;S44:利用公式获取得到初选节点的区块值QJk;其中,b8、b9、b10和b11均为预设比例系数。优选的,该系统还包括注册登录模块,所述注册登录模块用于用户提交设备信息进行注册并将注册成功的设备信息发送至服务器内存储,服务器接收到设备信息后并将该设备标记为区块链节点,同时将接收到设备信息的时刻标记为该设备的注册时刻;其中设备信息包括设备的位置、CPU型号、购买时间、额定内存和维修次数,设备为台式电脑或笔记本电脑;额定内存包括运行内存的额定容量和硬盘内存的额定容量。优选的,该系统还包括存储分配模块,所述存储分配模块用于对压密数据进行分配存储,具体分配步骤为:V1:用户通过客户端将存储的数据发送至服务器内,服务器接收到存的数据进行压缩并加密得到压密数据并将压密数据发送至存储分配模块;V2:设定区块链节点的硬盘内存为G1:硬盘的剩余内存标记为G4;将区块链节点的位置与存储分配模块的位置进行间距计算得到间距值并标记为G2;将区块链节点的注册时间与系统当前时间进行时间差计算得到注册时长并标记为G3;V3:将硬盘内存、剩余内存、间距值和注册时长进行去量化处理并取其数值,利用公式GF=G1×c1+G4×c2+G3×c3+(1/G2)×c4获取得到区块链节点的数配值GF;其中c1、c2、c3和c4均为预设比例系数;V4:选取数配值最大的区块链节点为该压密数据的存储节点,存储分配模块将压密数据发送至该区块链节点内进行存储。与现有技术相比,本专利技术的有益效果是:数据采集模块采集交易请求的消耗资源信息并将消耗资源信息发送至服务器内;数据分析模块获取服务器内存储的消耗资源信息并对消耗资源信息进行分析,将内存占用值和CPU占用值进行去量化处理并取其数值;利用公式获取得到交易请求的平均消耗值;数据分析模块将交易请求的平均消耗值发送至服务器内存储;负载均衡模块对交易请求进行负载均衡调节,选取节吻值最大的初选节点为该交易请求的选中节点,通过选中节点执行该交易请求;通过对交易请求的内存占用值和CPU占用值进行去量化处理并分析得到平均消耗值,通过平均消耗值选取区块链节点,然后将选取的区块链节点通过节点执行值和区块本文档来自技高网...

【技术保护点】
1.一种基于访问压力的区块链节点间负载均衡系统,其特征在于,包括数据采集模块、服务器、数据分析模块和负载均衡模块;/n所述数据采集模块用于采集交易请求的消耗资源信息并将消耗资源信息发送至服务器内;所述数据分析模块用于获取服务器内存储的消耗资源信息并对消耗资源信息进行分析,具体分析步骤为:/n步骤一:设定交易请求记为Pi,i=1、……、n;设定交易请求执行消耗的内存占用值记为Nj

【技术特征摘要】
1.一种基于访问压力的区块链节点间负载均衡系统,其特征在于,包括数据采集模块、服务器、数据分析模块和负载均衡模块;
所述数据采集模块用于采集交易请求的消耗资源信息并将消耗资源信息发送至服务器内;所述数据分析模块用于获取服务器内存储的消耗资源信息并对消耗资源信息进行分析,具体分析步骤为:
步骤一:设定交易请求记为Pi,i=1、……、n;设定交易请求执行消耗的内存占用值记为NjPi;交易请求执行消耗的CPU占用值为DjPi;j=1、……、n;j表示交易请求的执行次数;
步骤二:将内存占用值和CPU占用值进行去量化处理并取其数值;
利用公式获取得到交易请求的平均消耗值ZPi;其中,b1和b2均为预设比例系数;
步骤三:数据分析模块将交易请求的平均消耗值发送至服务器内存储;
所述负载均衡模块用于对交易请求进行负载均衡调节,具体调节步骤为:
S1:用户通过客户端发送交易请求至负载均衡模块,负载均衡模块接收到交易请求后,将交易请求与服务器内存储的所有交易请求进行匹配得到对应交易请求的平均消耗值ZPa;a∈i,同时负载均衡模块生成节点分析指令;
S2:负载均衡模块将节点分析指令发送至节点分析模块,节点分析模块分析后将区块链节点的节点执行值发送至负载均衡模块;
S3:负载均衡模块将节点执行值大于平均消耗值ZPa的区块链节点标记为初选节点;设定初选节点为Jk,k为正整数;
S4:负载均衡模块生成初选节点对应的访问指令并将其发送至节点统计模块,节点统计模块接收到初选节点对应的访问指令并进行处理得到初选节点的区块值并将区块值发送至负载均衡模块;
S5:将初选节点的节点执行值标记为ZJk;将初选节点的区块值标记为QJk;将节点执行值和区块值进行去量化处理并取其数值;
S6:利用公式FJk=ZJk×b3+QJk×b4-μ获取得到初选节点的节吻值FJk;其中,b3和b4均为预设比例系数,μ为误差修正因子,取值为2.3863;
S7:选取节吻值最大的初选节点为该交易请求的选中节点,通过选中节点执行该交易请求。


2.根据权利要求1所述的一种基于访问压力的区块链节点间负载均衡系统,其特征在于,该系统还包括节点采集模块和节点分析模块,所述节点采集模块用于采集区块链节点的节点信息并将节点信息发送至节点分析模块;节点信息包括区块链节点的内存剩余值和CPU的实时剩余使用率;所述节点分析模块用于接收节点信息并进行节点信息分析,具体分析步骤为:
SS1:节点分析模块接收到节点分析指令后,对节点信息进行分析,设定区块链节点的内存剩余值为D1;
SS2:将CPU的实时剩余使用率进行统计,设定剩余使用率为Lm,m=0、……99;且Lm的取值范围为(0,1],统计剩余使用率出现的次数并标记为ELm;
SS3:选取出现次数最大的剩余使用率,并将其标记为Lb,b∈m;
SS4:将其它剩余使用率的次数进行求和得到总出现次数EZ;...

【专利技术属性】
技术研发人员:李霞王剑
申请(专利权)人:江苏荣泽信息科技股份有限公司
类型:发明
国别省市:江苏;32

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

1