[发明专利]一种基于区块链的多主服务集群访问方法、装置和电子设备有效
申请号: | 202110169258.4 | 申请日: | 2021-02-07 |
公开(公告)号: | CN112507033B | 公开(公告)日: | 2021-06-22 |
发明(设计)人: | 张建钢 | 申请(专利权)人: | 北京全息智信科技有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/2458 |
代理公司: | 北京鼎承知识产权代理有限公司 11551 | 代理人: | 顾可嘉;夏华栋 |
地址: | 100081 北京市海淀区中*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 服务 集群 访问 方法 装置 电子设备 | ||
本发明提供了一种基于区块链的多主服务集群访问方法、装置和电子设备,基于无区块回滚的、交易在同一个节点只执行一次的区块链的多方共识和强一致性,将各个服务实例通过多活访问服务模块(智能合约)上链,并通过多活访问代理模块将写操作与其他操作分离,在做到连接/关闭、事务开始/结束、读操作通过网络直连高速执行的同时,将所有的写操作都通过区块链触发并自动同步和强一致以完全避免同步修改问题,从而支持实现超大规模的多主集群的访问。本发明的方法,不但可以用于实现超大规模的多主数据库集群,亦可以用于非数据库的超大规模多主集群。
技术领域
本发明涉及超大规模多活的数据库集群领域,尤其是基于区块链实现应用级同步的、多活多主(multi-master)的超大规模数据库集群这一技术领域。
背景技术
现有的数据库集群,分为主从(master-slave)方式或多主(multi-master)方式。主从方式中,写操作在主服务器(master),读操作在主服务器或从服务器(slave)。从服务器通过读取和同步主服务器的日志来实现二者数据的同步。多主方式中,数据库集群通过相互同步集群内服务器的日志,同时通过同步锁等机制避免同时修改(或解决同步修改)的问题。
多主方式的数据库集群机制,与各个厂家各自的数据库内部的实现流程深度耦合,具有高度的复杂性并对带宽要求较高,所以通常在局域网或高速连接的环境部署小规模的集群(典型的是两台)。而且,现有的数据库多主方案,在“数据”层面实现多主。在数据库宕机或恢复时,难以知晓和对应应用层面的影响。
数字时代的平台环境日趋庞大,越来越需要跨数据中心的、数量庞大的多主数据库集群部署,以满足平台对并发数据访问(读、写和事务)的需要。如何实现超大规模的、跨数据中心(甚至广域的)多主数据库集群,是数字时代对数据库平台的巨大挑战。
发明内容
为了解决上述技术问题中的至少一个,本发明提供了一种基于区块链的多主服务集群访问方法、装置、电子设备和可读存储介质。
本发明的第一方面,提供了一种基于区块链的多主服务集群访问方法,包括:
第一节点接收对服务实例的操作请求;
当所述第一节点确认所述操作请求为写操作请求时,将所述写操作请求发布至区块链网络;
所述区块链网络在所述区块生成或验证时,依次从区块包含的写操作请求序列中选取写操作请求,调用与当前写操作请求对应的第二节点在服务实例处理所述当前写操作请求;所述区块链网络为无回滚的区块链网络,且仅在单个网络节点执行一次交易。
具体地,调用第二节点在所述服务实例处理所述写操作请求序列,包括:
按照区块链客户端对智能合约的调用机制,调用第二节点在所述服务实例处理所述写操作请求序列。
可选地,方法还包括:
当所述第一节点确认所述操作请求为读操作请求时,转发所述读操作请求至所述第二节点;其中,所述第二节点在所述服务实例处理所述读操作请求。
可选地,方法还包括:
当所述第一节点确认所述操作请求为建立连接或终止连接的请求时,转发所述建立连接或终止连接的请求至所述第二节点;其中,所述第二节点在所述服务实例处理所述建立连接或终止连接的请求。
可选地,方法还包括:
当所述第一节点确认所述操作请求为建立事务或终止事务的请求时,转发所述建立事务或终止事务的请求至所述第二节点;其中,所述第二节点在所述服务实例处理所述建立事务或终止事务的请求。
可选地,方法还包括:
所述第一节点接收所述第二节点返回的写操作结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京全息智信科技有限公司,未经北京全息智信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110169258.4/2.html,转载请声明来源钻瓜专利网。