[发明专利]一种数据库中间件的流量管理方法及数据库中间件节点有效
申请号: | 202011504985.3 | 申请日: | 2020-12-18 |
公开(公告)号: | CN112256707B | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 孙正方;曹妙霞;陈书俊;黄炎;李恒;梁广涛 | 申请(专利权)人: | 上海爱可生信息技术股份有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/242;G06F16/27 |
代理公司: | 上海思捷知识产权代理有限公司 31295 | 代理人: | 王宏婧 |
地址: | 201203 上海市浦东新区中国(上海)自由贸*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 中间件 流量 管理 方法 节点 | ||
本发明提供的数据库中间件的流量管理方法及数据库中间件节点中,所述数据库中间件的流量管理方法包括主节点切换逻辑和数据库访问逻辑,所述主节点切换逻辑包括:接收来自于数据库集群发送的主节点的切换通知,并根据所述切换通知修改主节点信息;所述数据库访问逻辑包括:接收客户端发送的访问请求直接与所述主节点信息所标识的所述存储节点进行交互。如此配置,所述数据库中间件中存储的主节点信息的切换均由所述数据库集群主动发起修改,解决了现有技术中数据库中间件中存储的主节点状态易出现误判,进而错误地导致数据库中间件中的主节点信息和实际的主节点不匹配的问题。
技术领域
本发明涉及计算机技术领域,特别涉及一种数据库中间件的流量管理方法及数据库中间件节点。
背景技术
现有的分库分表数据库中间件系统,例如MyCat等,是基于中间件主动探测实现的后端数据库节点流量切换机制。其中典型的流程是:
1)通过分库分表中间件中定时执行任务对于后端数据库节点进行轮询探测;
2)根据探测的结果在分库分表中间件中对于后端数据库节点的状态进行标识;
3)当某个后端数据库节点状态异常,将指向其的流量发送给其他同一组级别的备用数据库节点(从库);
4)直到下一次承载当前流量的后端数据库节点探测结果异常,再从当前备用数据库节点中选择一个探测结果正常的后端数据库节点进行流量的承载
例如:
现有分库分表中间件X连接一个后端数据库集群DBGroup,集群中包含两个节点DB1、DB2初始状态下DB1为主库、DB2为从库。
有分库分表中间件X先将收到的来自业务的SQL请求发送至DB1并请求来自DB1的查询结果。X中将定时通过SQL执行探测DB1、DB2的可用状态。
当X的探测SQL无法在DB1正常执行时,则判定DB1失效,将后续的SQL请求发送给DB2。并以DB2中返回的数据信息和操作结果为准对外提供正常的软件功能。
直到X对于DB2的探测也出现异常,将后续流量切换回DB1。
这类分库分表中间件对于后端节点的主动探测并执行流量切换的方式存在以下缺点:
1)主动探测易受网络等传输环节的影响,在网络设备出现偶发异常或出现其他原因的网络抖动容易出现误判。
2)主动探测易受分库分表中间件本身压力承载的影响,探测后端数据库节点可用性的操作会因为分库分表中间件本身承压过大而出现异常失败(机器内存、CPU资源、进程内部网络资源调度失败)。
3)流量切换(发送给其他同一组级别备用数据库节点)的决策由分库分表中间件做出,和真实的后端数据库主从复制关系无法达成时间上的一致,从而必有部分流量发送到从库上,从而导致后端数据库节点的数据无法达成主从一致。
综上,现有技术中,数据库中间件中存储的主节点状态易出现误判,进而错误地导致数据库中间件中的主节点信息和实际的主节点不匹配的问题。
发明内容
本发明提供了一种数据库中间件的流量管理方法及数据库中间件节点,用以解决现有技术中数据库中间件中存储的主节点状态易出现误判,进而错误地导致数据库中间件中的主节点信息和实际的主节点不匹配的问题。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海爱可生信息技术股份有限公司,未经上海爱可生信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011504985.3/2.html,转载请声明来源钻瓜专利网。