logo好方法网

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


技术摘要:
本发明公开了一种基于访问压力的区块链节点间负载均衡系统,用于解决现有区块链中单个区块链节点访问压力大时,对单个区块链节点造成击穿,使得区块链节点集群中会因为压力太大出现雪崩情况的问题,包括数据采集模块、服务器、数据分析模块和负载均衡模块;数据采集模  全部
背景技术:
区块链节点通常指的是区块链网络中的计算机,也就是说任何连接到区块链网络 的计算机(包括手机,矿机等)都称为节点;现有区块链中单个区块链节点访问压力大时,对 单个区块链节点造成击穿,使得区块链节点集群中会因为压力太大出现雪崩情况。
技术实现要素:
本发明的目的就在于为了解决现有区块链中单个区块链节点访问压力大时,对单 个区块链节点造成击穿,使得区块链节点集群中会因为压力太大出现雪崩情况的问题,而 提出一种基于访问压力的区块链节点间负载均衡系统;通过选中节点执行该交易请求,通 过负载均衡模块对交易请求进行合理分配,使得整个区块链中的节点资源都得到高效使 用。 本发明的目的可以通过以下技术方案实现:一种基于访问压力的区块链节点间负 载均衡系统,包括数据采集模块、服务器、数据分析模块和负载均衡模块; 所述数据采集模块用于采集交易请求的消耗资源信息并将消耗资源信息发送至服务 器内;所述数据分析模块用于获取服务器内存储的消耗资源信息并对消耗资源信息进行分 析,具体分析步骤为: 步骤一:设定交易请求记为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:负载均衡模块生成初选节点对应的访问指令并将其发送至节点统计模块,节点统 5 CN 111600967 A 说 明 书 2/7 页 计模块接收到初选节点对应的访问指令并进行处理得到初选节点的区块值并将区块值发 送至负载均衡模块; 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均为预设比例系数。 优选的,该系统还包括注册登录模块,所述注册登录模块用于用户提交设备信息 进行注册并将注册成功的设备信息发送至服务器内存储,服务器接收到设备信息后并将该 6 CN 111600967 A 说 明 书 3/7 页 设备标记为区块链节点,同时将接收到设备信息的时刻标记为该设备的注册时刻;其中设 备信息包括设备的位置、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为本发明的原理框图。
下载此资料需消耗2积分,
分享到:
收藏