[发明专利]基于区块链的消息分区方法及系统、设备、存储介质在审
申请号: | 202110579854.X | 申请日: | 2021-05-26 |
公开(公告)号: | CN113347238A | 公开(公告)日: | 2021-09-03 |
发明(设计)人: | 王鑫;马超群;米先华;周中定;李信儒;兰秋军;万丽 | 申请(专利权)人: | 湖南大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F16/27 |
代理公司: | 长沙智嵘专利代理事务所(普通合伙) 43211 | 代理人: | 颜汉华 |
地址: | 410082 湖南省*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 消息 分区 方法 系统 设备 存储 介质 | ||
本发明公开了一种基于区块链的消息分区方法及系统、设备、存储介质,该方法在区块链产生交易消息进入对应的分区后,先计算该分区的资源消耗量,若超过第一阈值,意味着该分区已满,后续不能再进入新消息,则通过计算该分区所在的Topic中的其它分区与该分区的匹配度,并在匹配度值最大的分区的当前资源消耗量不超过第一阈值时,将后续准备进入该分区的新消息分配至匹配度值最大的分区,一方面,超出分区资源承载能力的部分消息无需长时间等待该分区腾出资源,省去了等待时间,另一方面,将消息分配至匹配度值最大的分区进行共识处理,确保了共识的可靠性,整体强化了Kafka集群处理高并发数据的能力,提升了区块链整体的共识效率。
技术领域
本发明涉及区块链技术领域,特别地,涉及一种基于区块链的消息分区方法及系统、设备、计算机可读取的存储介质。
背景技术
区块链技术作为一种分布式账本技术,是由多方共同维护,综合使用分布式账本、链式数据结构、点对点传输、共识机制、密码学原理等融合的一项技术,具有去中心化、开放透明、数据不可篡改、可追溯、隐私保护及高度自治等重要特性,在众多领域中具有广泛的应用。在区块链网络中,不同的参与者发起的交易必须按照产生的顺序被依次写入到账本中。如何在分布式场景下所有节点对同一个交易提案达成一致性,是区块链技术必须考虑且解决的重要问题。要实现这一目标,交易顺序必须被正确的建立,并且必须包含对交易被篡改或者恶意提交交易的处理方法,而共识算法就是保证分布式系统一致性实现的解决方式,共识算法是计算机科学中用于在分布式过程或系统之间实现对单个数据值的一致性的过程,旨在解决分布式网络中多个不可靠节点的可靠性问题。
现有的区块链网络采用Kafka的消息消费-订阅模式实现数据的共识过程,相关角色包括:Producer(生产者)、Kafka集群、Topic(主题)、Partition(分区)、Broker(数据存储服务器)、Zookeeper集群、Consumer(消费者)。Producer为消息生产者,在区块链网络中由某些节点充当该角色(这类节点由Zookeeper集群进行指定,主要负责消息的获取和发送,以及打包区块),采用push方式将接收到的消息(即交易数据)发送给Kafka集群。其中,Kafka集群由一组服务器构成,功能上分为Topic(主题)、Partition(分区)和Broker(数据存储服务器)。Topic是消息主题,一个Kafka集群同时支持多个Topic,消息进入集群后进入相应的Topic中。Partition是Topic下的分区,一个Topic可以同时支持多个Partition分区,消息进入Topic后会被分配到Partition分区中。Topic下的Partition数量由Zookeeper集群进行管理。Broker为数据存储服务器,是一种用于实现数据存储的主机服务器,每个Topic都有一个Broker,存储当前各个Partition的消息数据。Zookeeper集群由一组服务器构成,用于对Kafka集群进行管理,可以指定和注册Producer和Consumer节点、配置Kafka集群的Topic和Partition,以及在系统资源出现压力时进行负载均衡。Consumer为消息消费者,在区块链网络中由某些节点充当该角色,采用pull方式将消息从Broker服务器获取到本地,并打包成区块,将区块分发给区块链网络中的其它节点进行验证。消息是Kafka中最基本的数据单元,在Kafka中,一条消息由key和value两部分构成,在发送一条消息时,可以指定这个key,Producer会根据key来判断当前消息应该发送并存储到哪个Partition中。消息选择Partition分区的策略主要有哈希策略与轮询策略两种,当没有为消息指定key,即key为null时,消息会以轮询的方式发送到各个分区,当key不为null时,Producer节点会使用key的哈希值(采用Murmur2Hash算法)对Partition数量取模,以此来决定把消息发送到哪个Partition上。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南大学,未经湖南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110579854.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种适合吊箱使用的遥控测验悬杆
- 下一篇:一种边缘计算机网关后端系统