[发明专利]一种基于连接池管理的分布式事务处理方法在审
申请号: | 201310407440.4 | 申请日: | 2013-09-09 |
公开(公告)号: | CN103500180A | 公开(公告)日: | 2014-01-08 |
发明(设计)人: | 杨宗良 | 申请(专利权)人: | 北京思特奇信息技术股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;H04L29/08 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 杨立 |
地址: | 100086 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 连接 管理 分布式 事务处理 方法 | ||
1.一种基于连接池管理的分布式事务处理方法,其特征在于,包括如下步骤:
步骤1:在代理服务器中建立连接池,并初始化;
步骤2:应用服务器向代理服务器发送业务请求;
步骤3:代理服务器判断业务请求的类型,如过为非事务请求,执行步骤4;如果为事务请求,执行步骤5;
步骤4:通过短连接方式处理,结束;
步骤5:判断业务请求是否为事务开启性语句,如果是则执行步骤6,否则执行步骤8;
步骤6:赋予应用服务器与代理服务器间的连接状态为事务状态并设定事务级别,代理服务器根据业务请求在连接池中查找要发送业务请求的数据库服务器,并建立代理服务器与查找到的各数据库服务器间的持久化连接;
步骤7:代理服务器通过持久化连接将业务请求发送给各数据库服务器,执行步骤9;
步骤8:代理服务器根据业务请求内容进行路由,根据路由结果与已建立的持久化连接进行比较,找到所需的持久化连接,并通过找到的持久化连接将业务请求发送给相应的数据库服务器;
步骤9:所述各数据库服务器处理业务请求,并向代理服务器返回处理结果;
步骤10:代理服务器将处理结果返回给应用服务器,并判断本次处理的业务请求是否为本次事务处理的结束性语句,如果不是,则保持代理服务器与各数据库服务器间的持久化连接,返回步骤2;如果是则收回代理服务器与所述各数据库服务器间的持久化连接,结束。
2.根据权利要求1所述一种基于连接池管理的分布式事务处理方法,其特征在于,步骤1中建立连接池并初始化的具体步骤如下:
步骤1.1:建立连接池;
步骤1.2:配置连接池中每个数据库服务器节点的用户操作权限;
步骤1.3:加载连接池节点信息。
3.根据权利要求1所述一种基于连接池管理的分布式事务处理方法,其特征在于,在代理服务器与数据库服务器建立持久化连接后,将应用服务器和代理服务器间的连接状态以及事务级别赋予所述代理服务器与各数据库服务器建立的持久化连接。
4.根据权利要求1所述一种基于连接池管理的分布式事务处理方法,其特征在于,步骤4的具体实现为:
步骤4.1:赋予应用服务器与代理服务器间的连接状态为非事务状态;
步骤4.2:代理服务器根据业务请求内容进行路由,并根据路由结果通过临时连接将业务请求发送给相应的数据库服务器;
步骤4.3:数据库服务器处理业务请求并将处理结果通过临时连接返回给代理服务器;
步骤4.4:代理服务器将处理结果返回给应用服务器,释放代理服务器与数据库服务器间的临时连接。
5.根据权利要求1所述一种基于连接池管理的分布式事务处理方法,其特征在于,步骤10中所述事务结束性语句为数据提交语句或数据回滚语句。
6.根据权利要求5所述一种基于连接池管理的分布式事务处理方法,其特征在于,
所述数据提交语句的发送条件为:当一次事务处理的所有业务请求均处理成功时,应用服务器才通过代理服务器向各数据库服务器发送数据提交请求,各数据库服务器根据数据提交请求进行数据提交操作,操作完成后收回代理服务器与各数据库服务器间的持久化连接;
所述数据回滚语句的发送条件为:当一次事务处理的任何一个业务请求发生异常时,应用服务器即通过代理服务器向各数据库服务器发送数据回滚请求,各数据库服务器根据数据回滚请求进行数据回滚操作,操作完成后回收代理服务器与各数据库服务器间的持久化连接。
7.根据权利要求1所述一种基于连接池管理的分布式事务处理方法,其特征在于,所述连接池中配置有负责均衡策略。
8.根据权利要求7所述一种基于连接池管理的分布式事务处理方法,其特征在于,所述负载均衡策略配置为强一策略或弱一策略;
所述强一策略,当所有数据库服务器都在线的情况下,代理服务器才向相应的数据库服务器发送事务请求;
所述弱一策略,只对在线的相应的数据库服务器发送业务请求。
9.根据权利要求1所述一种基于连接池管理的分布式事务处理方法,其特征在于,还包括所述代理服务器定时向各数据库服务器进行握手,判断各数据库服务器是否在线,如果存在离线的数据库服务器,将离线的数据库服务器从连接池中移除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思特奇信息技术股份有限公司,未经北京思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310407440.4/1.html,转载请声明来源钻瓜专利网。