Oracle ODP.net托管与非托管驱动程序

Joh*_*dak 37 oracle odp.net

托管和非托管Oracle ODP.Net驱动程序之间是否存在任何性能基准测试?

(即除了简化架构/部署之外,移动到托管驱动程序是否有任何优势)

b_l*_*itt 25

快速启动视频中的子弹:

  • 文件较少(最多1或2个dll)
  • 占地面积更小(10 MB与200 MB相比)
  • 更容易并排部署
  • 32和64位的相同组件(第二个MTS组件除外).
  • 代码访问安全性

我不确定性能,但我怀疑它会有什么不同.我的猜测是两个驱动程序以"Oracle Net"相同的方式进行通信.虽然为准备命令和处理结果而在内存客户端操作中可能存在细微差别,但这种开销通常仅代表相对于整个事务的一小部分时间.大部分成本/时间花费在物理IO中的服务器上并将数据传输回客户端.这与从oledb提供程序或System.DataAccess.OracleClient驱动程序进行的操作完全不同.这是来自同一RDBMS公司的另一个版本 - 他们将利用其他客户使用的所有相同的性能技巧.我希望我可以发表一项研究,但我猜这样的事情不存在,因为最终它会不起眼.一个没有新闻的例子是好消息 - 如果新的提供商在某种程度上更糟糕,你会读到它.

简单就是切换到这个IMO的充分理由.绝大多数开发人员和管理员并不完全了解提供程序及其与非托管客户端的关系.关于oracle主页偏好,版本不匹配,升级等的困惑不断出现.消除这些问题将是一个值得欢迎的变化.


gus*_*ico 25

我想分享一些结果.我认为与部署的简易性相比,性能的小缺乏是值得的.

在此输入图像描述

注意:seg表示秒.对于那个很抱歉.

当然这是一个简单的测试,并且有几个主题没有包括连接池,稳定性,可靠性等等......

值得一提的是,场景执行了100次.所以时间量是100次执行的平均值.


Win*_*-10 11

这是你们所有人的问题.花了几个星期的时间来弄清楚为什么Oracle托管驱动程序不能使用ef6连接.如果您的数据库具有以下数据完整性算法,那么您必须使用非托管驱动程序!

埋在oracle文档深处!谢谢ORACLE !!!!!在此输入图像描述