asp.net Oracle调优线程睡眠

时间:2014-10-31 12:27:42

标签: c# asp.net oracle

我在ASP.NET MVC 4中有一个网站。 该站点将数据保存在Oracle的数据库中。我的Oracle.DataAcess.dll版本是4.112.3.0(运行时版本:4.0.30319)。下面是执行以下命令获得的数据库信息:' select * from v $ version';

database info

好吧,我正在使用Jet Brain的Dot Trace分析我的网站。 在我的快照中,他们向我展示了Oracle.DataAcess.Client.OracleTuningAgent'中的两种方法。消耗更多的处理器时间。这种方法是Oracle.DataAcess.Client.OracleTuningAgent.DoScan'和' Oracle.DataAcess.Client.OracleTuningAgent.DoWait'。要么调用方法' System.Threading.Thread.Sleep'。下面是快照信息:

Dot Trace snapshot

我尝试添加' Self Tuning = false'在我的连接字符串中但他们只停止调用DoWait函数并继续调用“DoScan”#39;功能

有一种方法可以禁用此功能吗?或者这不是一个好主意吗?

Obs:抱歉英文不好,实际上我使用谷歌翻译来帮我写这个问题。

1 个答案:

答案 0 :(得分:0)

费尔普斯。

在我的情况下,我长大了最大池大小,直到没有错误。 像这样。 "最大池大小= 250;"

毕竟,我尝试设置我的应用程序需要多少连接。 你还需要调整你的connectionString 例子) 最小/最大池大小 Incr / Decr Pool Size也是如此。

如下我的评论。

其实我的问题是由于缺乏oracle连接造成的。 因为我没有打电话给#34; close()"完成请求后。

如果您有权限查找v $ session表。 你可以看到成长的会话数。你的每一个功能都在运行。

但如果您没有权限,则可以使用netstat -an。 与findstr / c:1521