[发明专利]智能启用分布式事务的方法有效

专利信息
申请号: 201210408530.0 申请日: 2012-10-24
公开(公告)号: CN102945264B 公开(公告)日: 2017-02-15
发明(设计)人: 杨良;王延东 申请(专利权)人: 浪潮通用软件有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 济南信达专利事务所有限公司37100 代理人: 姜明
地址: 250100 山东*** 国省代码: 山东;37
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种智能启用分布式事务的方法,属于计算机领域。该方法对微软.NET的分布式事务接口进行透明封装,多个数据访问层协同工作时,如果后台数据库为同一实例时,自动启用数据库事务,若是多个数据库实例,则自动启用分布式事务,并且把已经启用的数据库事务与分布式事务融合。与现有技术相比,本发明的智能启用分布式事务的方法具有结构清晰、应用方便、兼容标准事务接口等特点,广泛应用于分布式数据访问架构之中,具有很好的推广应用价值。
搜索关键词: 智能 启用 分布式 事务 方法
【主权项】:
智能启用分布式事务的方法,其特征在于:对微软.NET的分布式事务接口进行透明封装,多个数据访问层协同工作时,如果后台数据库为同一实例时,自动启用数据库事务,若是多个数据库实例,则自动启用分布式事务,并且把已经启用的数据库事务与分布式事务融合,具体实现方法包含数据库连接管理及分布式事务代理两部分:数据库连接管理:实现一个数据库连接工厂GSPDatabaseFactory,以数据库连接工厂GSPDatabaseFactory实现对数据源创建的管理,创建数据库连接成功后放入内部连接池;数据库连接工厂GSPDatabaseFactory根据连接字符串形成连接信息字段列表,再根据当前线程上下文Token形成一个索引值,根据这个索引值在内部连接池中检索可用的数据库连接;数据库连接工厂GSPDatabaseFactory的GetDatabase方法返回一个接口IGSPDatabase有执行SQL语句的接口方法和开启、关闭数据库的方法,在不启用分布式事务的情况下,由数据库连接工厂GSPDatabaseFactory智能管理数据库连接的开启和关闭;分布式事务代理:实现一个虚拟分布式事务协调器:VirtualDTC,初次调用下述代码,初始化当前调用上下文中的虚拟分布式事务作用域,VirtualTransactionScope scope1 = newVirtualTransactionScope(TransactionScopeOption.Required);当前调用堆栈继续调用上述代码,根据TransactionScopeOption参数的值来确定虚拟分布式事务如何融合,虚拟分布式事务协调器记录当前管理的数据库连接,如果后续创建的数据库连接与连接池中的连接信息相同,则直接使用连接池中的连接,接着比较当前正在使用的数据库连接是否就是匹配的连接:如果相同,并且事务属性是Required,则前后两次数据库连接进行合并,并且增加引用计数;外部调用代码后续试图关闭数据库时,由数据库连接管理器负责减少引用计数;如果连接信息相同,但是事务属性是RequiredNew,则内部创建一个显式的分布式事务,并且把管理的内部数据库连接登记到该分布式事务中;如果与连接池上连接信息不同,则直接启动显式分布式事务,并把现有数据库连接登记到分布式事务。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮通用软件有限公司,未经浪潮通用软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201210408530.0/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top