linux下ORACLE性能测试报告,保持与不保持连接相差250倍

linux下ORACLE性能测试报告,保持与不保持连接相差250倍

在开发ORACLE应用程序中我用到的是PROC*C++,在实际运行中发现,它写库的速度非常慢,经测试,发现其瓶颈在每次写库都是一个独立的连接然后是写最后关闭连接的过程原因。

把它改成保持着连接方式,效率提高了约250倍!

下面是我的测试报告:

一、原来的方式,连接ORACLE,写一条记录,关闭连接。
重复 100 次连接 总时间:38s
重复 1000次,时间398s
重复 10次,时间:5s

平均每条记录需要时间: 0.426秒

二、新的方式:建立好连接,写1万条记录,再关闭连接
第一次测试:用时 17 秒
第二次测试:用时 19 秒
第三次测试:用时 15 秒

平均每条记录用时:0.0017秒

两种方式竟相差了250倍!( 0.426/0.0017 = 250)      
这是正常的,如果客户端多的话,持续连接会造成oracle的processes过大,而使它不可用。我想这也应该和sql语法分析有一定关系,看你的应用来调节连接方式和对你的数据库进行优化!      
楼上的兄弟,你既然可以对连接可以测试,那是否可以帮我测试一下,共享内存要设置成多少数据库频繁工作,才不会出现问题!我听人说过共享内存要和物理内存成一定的比例,可我不知道是多少!