[发明专利]一种支持多区块链网络的区块链浏览方法有效
申请号: | 201910785004.8 | 申请日: | 2019-08-23 |
公开(公告)号: | CN110659430B | 公开(公告)日: | 2023-07-04 |
发明(设计)人: | 高墀炜;于欢 | 申请(专利权)人: | 上海共链信息科技有限公司 |
主分类号: | G06F16/955 | 分类号: | G06F16/955;G06F16/23 |
代理公司: | 上海创开专利代理事务所(普通合伙) 31374 | 代理人: | 汪发成 |
地址: | 200333 上海市普陀*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 支持 区块 网络 浏览 方法 | ||
1.一种支持多区块链网络的区块链浏览方法,其特征在于,包括以下步骤:
S201:配置多个区块链网络的基本信息到文件或者数据库,其中,配置信息包括多个区块链网络的chainId、每个网络中的区块链节点集群的URL列表;
S202:启动区块链浏览器系统;
S203:启动节点管理模块任务、节点监控模块任务、数据展示模块任务、多个数据采集模块任务,对每个区块链网络启动一个数据采集模块任务,每个数据采集任务有各自独立的消息队列,用于接收数据更新请求;所述节点管理模块维护所有区块链网络的节点集群信息,采用定时任务的方式执行;
S204:节点管理模块任务定期从文件或者数据库中读取多个区块链网络的信息,有新加入的区块链网络时,调用数据库管理模块建立数据库实例;
S205:节点监控模块任务定期从节点管理模块获取多个区块链网络的信息,找到每个网络中数据最新的节点为最佳节点,向各自网络的数据采集模块任务的消息队列中发送数据更新请求,请求中包括最佳节点信息,通知数据采集模块更新此区块链网络的链上数据;
节点管理模块的定时任务包括以下流程:
S301:从配置文件或者数据库读取多个区块链网络信息;
S302:将新读取的区块链网络信息与上次读取的旧数据进行比较;
S303:判断是否有新的区块链网络,若有跳到S304,没有跳到S305;
S304:有新的区块链网络,调用数据库控制模块创建新区块链网络的数据库实例和相关数据表;
S305:更新节点管理模块维护的区块链网络信息;
所述节点监控模块维护所有区块链网络的节点状态信息,包括节点在线状态、节点最新区块信息,采用定时任务的方式执行;
所述节点监控模块的定时任务包括以下流程:
S401:从节点管理模块读取多个区块链网络信息;
S402:遍历所有区块链网络信息;
S403:遍历当前区块链网络的所有节点;
S404:向当前节点请求最新区块高度;
S405:节点是否遍历结束,遍历结束进入S406,否则进入S403继续遍历;
S406:计算出所有节点中区块高度最大的节点设为最佳节点;
S407:向当前区块链网络的数据采集模块消息队列发送数据更新请求,请求中包括最佳节点信息;
S408:区块链网络是否遍历结束,遍历结束进入S409,否则进入S402继续遍历;
S409:当前周期处理完毕,等待进入下一个处理周期;
每个数据采集模块任务实时从消息队列中获取节点监控模块发送的数据更新请求,更新链上数据到对应网络的数据库中;
所述数据更新请求包括以下流程:
S501:从消息队列读取未处理的数据更新请求,若消息队列为空则阻塞,直到有消息为止;
S502:解析请求中的最佳节点信息;
S503:与当前区块链网络的最佳节点进行连接,获取最佳节点的最新区块高度;
S504:判断最佳节点最新区块高度是否大于当前同步完成的区块高度,若大于进入S505,否则进入S508;
S505:向最佳节点请求[当前同步完成的区块高度,最佳节点最新区块高度]之间的所有区块数据、区块中的交易数据、交易执行结果数据;
S506:调用数据库控制模块将区块数据、交易数据、交易结果数据写入相关数据库表中;
S507:更新当前同步完成的区块高度为最佳节点最新区块高度;
S508:当前请求处理完,进入S501继续处理下一个请求;
数据展示模块任务实时处理用户浏览器的数据展示请求,根据用户的请求向数据查询模块获取相关数据,并返还给用户浏览器进行展示;
S206:每个数据采集模块任务处理消息队列中的数据更新请求,从各个网络的最佳节点同步链上数据,并写入各自区块链网络的数据库表中;
S207:数据展示模块任务等待接收用户数据展示请求;
所述数据展示请求包括以下流程:
S601:用户在浏览器地址栏输入某个区块链网络的数据展示页面的URL;
S602:数据展示模块解析URL及其参数信息,解析出chainId、请求数据信息;
S603:数据展示模块调用数据查询模块相关接口获取数据;
S604:数据查询模块向数据库控制模块获取相关数据;
S605:数据库控制模块到缓存或者数据库中查找相关数据,返还给数据查询模块;
S606:数据查询模块对获取的数据进行整合过滤,将整合后的数据返回给数据展示模块;
S607:数据展示模块将数据以HTML页面数据的形式返还给用户浏览器进行展示。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海共链信息科技有限公司,未经上海共链信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910785004.8/1.html,转载请声明来源钻瓜专利网。