发送针对数据请求的应答消息的方法及装置、区块链系统制造方法及图纸

技术编号:24333771 阅读:55 留言:0更新日期:2020-05-29 21:08
本说明书实施例提供了一种用于发送针对数据请求的应答消息的方法,包括:响应于针对多个数据的数据请求,针对所述多个数据中的各个待发送数据,将所述各个待发送数据中的至少一个待发送数据组装入批次应答消息;确定当前的批次应答消息是否满足当前检查点条件;在当前的批次应答消息满足当前检查点条件时,将所述当前的批次应答消息确定为当前检查点,并确定所述当前的批次应答消息的大小是否超过预定阈值;以及在所述当前的批次应答消息的大小超过所述预定阈值时,将前一检查点所对应的批次应答消息发送给数据请求发送方。

Method and device of sending reply message for data request, blockchain system

【技术实现步骤摘要】
发送针对数据请求的应答消息的方法及装置、区块链系统
本说明书实施例涉及区块链
,具体地,涉及发送针对数据请求的应答消息的方法及装置、区块链系统。
技术介绍
区块链系统是一种去中心化的、由多个节点参与的分布式数据存储系统。数据一旦被写入每个节点上的区块链,一方面,意味着数据在区块链网络中被公开,另一方面,写入区块链的数据也难以被删除与篡改。此外,中心化设备也可以采用类似于区块链存储(可以视为中心化的区块链存储)的方式对数据进行存储。区块链系统中通常存在多个参与节点。已有参与节点之间通过共识协议来确保各自数据的一致性。但是,当出现参与节点发生故障、新参与节点加入或者其他各种原因时,可能导致某参与节点的数据落后于其它正常的参与节点。因而,区块链系统需要通过数据同步协议,来确保落后的参与节点能够使本地所维护的数据追赶上其它正常参与节点,从而参与到正常的共识过程中。当某参与节点发现自己所维护的数据落后于其它正常节点时,可以发起数据同步过程,即向正常参与节点请求其缺少的数据。正常节点在接收到数据请求时,可以将落后的参与节点所请求的数据包括在应答消息中发送给落后参与节点。
技术实现思路
鉴于上述,本说明书实施例提供了一种发送针对数据请求的应答消息的方法及装置、区块链系统。根据本说明书实施例的一个方面,提供了一种用于发送针对数据请求的应答消息的方法,包括:响应于针对多个数据的数据请求,针对所述多个数据中的各个待发送数据,将所述各个待发送数据中的至少一个待发送数据组装入批次应答消息;确定当前的批次应答消息是否满足当前检查点条件;在当前的批次应答消息满足当前检查点条件时,将所述当前的批次应答消息确定为当前检查点,并确定所述当前的批次应答消息的大小是否超过预定阈值;以及在所述当前的批次应答消息的大小超过所述预定阈值时,将前一检查点所对应的批次应答消息发送给数据请求发送方。可选的,在另一示例中,所述方法还可以包括:在所述当前的批次应答消息的大小未超过所述预定阈值时,存储所述当前的批次应答消息;以及删除所存储的前一检查点所对应的批次应答消息。可选的,在另一示例中,各个检查点所对应的检查点条件可以是基于已被组装入所述批次应答消息的待发送数据数量生成的。可选的,在另一示例中,所述各个检查点与前一检查点所对应的待发送数据数量之差可以是递增的。可选的,在另一示例中,在所确定的检查点的数量未超过预定数量时,所述各个检查点与前一检查点所对应的待发送数据数量之差可以是递增的,和/或在所确定的检查点的数量超过预定数量时,所述各个检查点与前一检查点所对应的待发送数据数量之差可以是递减的。可选的,在另一示例中,所述数据请求发送方可以包括区块链系统中的数据落后的区块链节点,所述数据请求可以包括区块数据同步请求,所述数据可以包括所述区块链节点处缺少的区块数据。根据本说明书实施例的另一方面,还提供一种用于发送针对数据请求的应答消息的装置,包括:批次应答消息组装单元,响应于针对多个数据的数据请求,针对所述多个数据中的各个待发送数据,将所述各个待发送数据中的至少一个待发送数据组装入批次应答消息;检查点确定单元,确定当前的批次应答消息满足当前检查点条件,并在所述当前的批次应答消息满足当前检查点条件时,将所述当前的批次应答消息确定为当前检查点;消息大小确定单元,确定所述当前的批次应答消息的大小是否超过预定阈值;以及批次应答消息发送单元,在所述当前的批次应答消息的大小超过所述预定阈值时,将前一检查点所对应的批次应答消息发送给数据请求发送方。可选的,在另一示例中,所述装置还可以包括:批次应答消息存储单元,在所述当前的批次应答消息的大小未超过所述预定阈值时,存储所述当前的批次应答消息;以及批次应答消息删除单元,删除所存储的前一检查点所对应的批次应答消息。可选的,在另一示例中,各个检查点所对应的检查点条件可以是基于已被组装入所述批次应答消息的待发送数据数量生成的。根据本说明书实施例的另一方面,还提供一种区块链系统,包括:第一区块链节点,所述第一区块链节点在确定相对于第二区块链节点缺少预定数据时,向所述第二区块链节点发送针对所缺少的多个预定数据的数据请求;以及第二区块链节点,包括如上所述的装置。可选的,在另一示例中,所述数据请求可以包括区块数据同步请求,所述预定数据可以包括所述第一区块链节点处缺少的区块数据。根据本说明书实施例的另一方面,还提供一种计算设备,包括:至少一个处理器;以及存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如上所述的方法。根据本说明书实施例的另一方面,还提供一种非暂时性机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的方法。利用本说明书实施例的方法和装置,通过在将各个待发送数据中的至少一个待发送数据组装入批次应答消息后,确定当前的批次应答消息是否是检查点,并在当前的批次消息是检查点时,确定当前的批次应答消息是否超过预定阈值,在当前的批次应答消息超过预定阈值时,将前一检查点所对应的批次应答消息发送给数据请求发送方,从而不仅能够使所发送的应答消息的大小在不超过预定阈值的情况下,尽量接近预定阈值,以提高网络资源利用效率,而且还能够减少因确定应答消息大小所消耗的运算量。附图说明通过参照下面的附图,可以实现对于本说明书实施例内容的本质和优点的进一步理解。在附图中,类似组件或特征可以具有相同的附图标记。附图是用来提供对本专利技术实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本说明书实施例的实施例,但并不构成对本说明书实施例的实施例的限制。在附图中:图1示出了可用于执行根据本说明书实施例的实施例的用于发送针对数据请求的应答消息的方法的环境的示例的示意图;图2示出了执行根据本说明书实施例的实施例的用于发送针对数据请求的应答消息的方法的系统架构的示例的示意图;图3是用于说明根据本说明书的用于发送针对数据请求的应答消息的方法的示例性应用场景的流程图;图4是根据本说明书的一个实施例的用于发送针对数据请求的应答消息的方法的流程图;图5是根据本说明书的另一实施例的用于发送针对数据请求的应答消息的方法的流程图;图6是用于说明根据本说明书的一个实施例的用于发送针对数据请求的应答消息的方法中的检查点的流程图;图7是根据本说明书的一个实施例的用于发送针对数据请求的应答消息的装置的结构框图;图8是根据本说明书的一个实施例的区块链系统的结构框图;以及图9是根据本说明书实施例的一个实施例的用于实现用于发送针对数据请求的应答消息的方法的计算设备的结构框图。具体实施方式以下将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本说明本文档来自技高网...

【技术保护点】
1.一种用于发送针对数据请求的应答消息的方法,包括:/n响应于针对多个数据的数据请求,针对所述多个数据中的各个待发送数据,将所述各个待发送数据中的至少一个待发送数据组装入批次应答消息;/n确定当前的批次应答消息是否满足当前检查点条件;/n在所述当前的批次应答消息满足当前检查点条件时,将所述当前的批次应答消息确定为当前检查点,并确定所述当前的批次应答消息的大小是否超过预定阈值;以及/n在所述当前的批次应答消息的大小超过所述预定阈值时,将前一检查点所对应的批次应答消息发送给数据请求发送方。/n

【技术特征摘要】
1.一种用于发送针对数据请求的应答消息的方法,包括:
响应于针对多个数据的数据请求,针对所述多个数据中的各个待发送数据,将所述各个待发送数据中的至少一个待发送数据组装入批次应答消息;
确定当前的批次应答消息是否满足当前检查点条件;
在所述当前的批次应答消息满足当前检查点条件时,将所述当前的批次应答消息确定为当前检查点,并确定所述当前的批次应答消息的大小是否超过预定阈值;以及
在所述当前的批次应答消息的大小超过所述预定阈值时,将前一检查点所对应的批次应答消息发送给数据请求发送方。


2.如权利要求1所述的方法,还包括:
在所述当前的批次应答消息的大小未超过所述预定阈值时,存储所述当前的批次应答消息;以及
删除所存储的前一检查点所对应的批次应答消息。


3.如权利要求1所述的方法,其中,各个检查点所对应的检查点条件是基于已被组装入所述批次应答消息的待发送数据数量生成的。


4.如权利要求3所述的方法,其中,所述各个检查点与前一检查点所对应的待发送数据数量之差是递增的。


5.如权利要求3所述的方法,其中,在所确定的检查点的数量未超过预定数量时,所述各个检查点与前一检查点所对应的待发送数据数量之差是递增的,和/或
在所确定的检查点的数量超过预定数量时,所述各个检查点与前一检查点所对应的待发送数据数量之差是递减的。


6.如权利要求1所述的方法,其中,所述数据请求发送方包括区块链系统中的数据落后的区块链节点,所述数据请求包括区块数据同步请求,所述数据包括所述区块链节点处缺少的区块数据。


7.一种用于发送针对数据请求的应答消息的装置,包括:
批次应答消息组装单元,响应于针对多个数据的数据请求,针对所述多个数据中的各个待发送...

【专利技术属性】
技术研发人员:陈锐
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:浙江;33

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

1