分布式事务(DTx:Distributed Transaction)一直是大型应用所需的必要特性,由于需要同时协调不同的数据源(例如:数据库、队列、甚至注册表和新一代操作系统的I/O),因此启动DTx的代价相对较大,而且很多中间件服务器的DTx协调器与应用位于不同的进程中,因此对于频繁提交的OLTP操作而言性能影响较大。
.NET Framework 2.0开始默认提供ORACLE的ADO.NET驱动,虽然也支持通过TransactionScope隐式启动DTx,但却采用应用宿主进程外的dllhost.exe作为独立的DTx协调器(DTC)。ORACLE在自己的ADO.NET驱动中对该问题进行了显著优化,不仅对反复打开的连接提供了默认的连接池引用重定向,而且把DTx的协调工作置于.NET CLR与应用宿主内部,对于大型应用而言可以有效的减少因跨多进程协调引发的性能损失。
下面的示例代码采用ORACLE的ADO.NET驱动(using Oracle.DataAccess.Client)运行,从COM+的统计看并不会引起DTC调用,而如果换成微软的ORACLE ADO.NET驱动(using System.Data.OracleClient),就需要启动昂贵的DTC服务。
|
原文链接:http://www.infoq.com/cn/news/2007/12/adonet-oracle-ts
【相关文章】
|
||||
| · ASP.NET开发教程 · 专题:ASP.NET 2.0基础.. · LAMP技术精解 · 服务器节能与绿色IT · ARP攻击防范与解决方案 · Linux 集群技术专题 · Windows集群服务应用 · CISSP认证成长之路 |
· SQL Server 2008/2005.. · SQL Server入门到精通 · 网络工程师职业规划与.. · 浏览器的战国时代 · 运营商封堵ADSL共享 中.. · 微软出价446亿美元收购.. · 技术人求职简历完备手册 · 开源虚拟化技术Xen |
|||
|
||||
| · SOA 面向服务架构 · SQL Server 2008/2005.. · Apache技术专题 · 三层交换技术专题 · SQL Server入门到精通 · Apache技术专题 · Windows集群服务应用 · 国际文档格式标准开战 |
· 路由器设置与口令恢复 · Linux 集群技术专题 · PHP开发应用手册 · SOA 面向服务架构 · 企业数据恢复指南 · 了解统一威胁管理(UTM).. · 专题:AIX操作系统管理.. · 访问控制列表(ACL)介绍 |
|||
|
||||
| · SQL Server入门到精通 · SQL Server 2008/2005.. · SOA 面向服务架构 · Apache技术专题 · 三层交换技术专题 · Apache技术专题 · 企业数据恢复指南 · Windows集群服务应用 |
· 路由器设置与口令恢复 · Linux 集群技术专题 · SOA 面向服务架构 · 了解统一威胁管理(UTM).. · 反垃圾邮件技术应用 · 访问控制列表(ACL)介绍 · ASP.NET开发教程 · PHP开发应用手册 |
|||