【问题标题】:getting request timeout exceptions from a asp.net application using the Oracle client with multiple schemas使用具有多个模式的 Oracle 客户端从 asp.net 应用程序获取请求超时异常
【发布时间】:2011-01-08 05:20:45
【问题描述】:

我们有一个使用 Oracle 客户端的 asp.net 应用程序。在连接字符串中,我们指定了 3 个基本属性:数据源、用户 ID 和密码。我们正在使用连接池。我们的数据位于 2 个不同的 Oracle 模式中。大多数请求都是针对来自 Schema1 的数据。超时来自对来自 schema2 的数据的调用

连接是否可能隐式绑定到架构?

这可以解释很多。由于大多数调用都是针对来自 schema1 的数据,因此池中充满了仅对 schema1 有用的连接。然后调用来自 schema2 的数据,并且池中没有一个连接可以满足请求,我们得到超时。

感谢您的帮助, - 格雷格

【问题讨论】:

    标签: asp.net oracle schema connection-pooling


    【解决方案1】:

    Oracle 连接始终与模式绑定,默认是用户自己的模式。如果你使用两个不同的连接字符串,你应该已经有两个独立的池,所以我怀疑你可能已经达到了数据库的最大会话数。

    您的“SESSIONS”实例参数是什么。将其与连接中的“最大池大小”设置进行比较。默认我认为是 11g 的 100,但你没有提到哪个版本。您可能需要提高 PROCESSES 或降低 Max Pool Size。

    您应该在看到这些超时时查询 V$SESSION 以查看实际的 Oracle 会话数。

    select username, count(1) from v$session group by username;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-09
      • 1970-01-01
      • 2017-09-03
      • 2014-08-16
      • 2012-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多