小编jpr*_*ipe的帖子

ODP.NET连接池参数

我正在尝试使用ODP.NET版本2.111.6.20为我的.NET应用程序配置连接池.该数据库是Oracle 11.1.

我在我的.NET 2.0应用程序中使用以下连接字符串:

Data Source=prod; User Id=FAKE_USER; Password=FAKE_PASS; Pooling=true; Min Pool Size=2; Max Pool Size=5; Connection Timeout=30;"

根据文档,连接池应初始化为2个连接,并根据需要增加最多5个连接.它永远不会超过5个连接.

我所看到的是,连接每次增长2个,并且增长到10个连接.我通过查询v $ session表监视Oracle数据库中的连接,因此我知道连接来自源自我的应用程序的特定应用程序.

如果有人可以帮我确定在这个应用程序内的连接池中可能发生的事情,可能允许超过最大连接数我会很感激.

样本C#代码

以下是调用数据库的代码示例:

const string connectionString = "Data Source=prod; User Id=FAKE_USER; Password=FAKE_PASS; Pooling=true; Min Pool Size=5; Max Pool Size=5; Connection Timeout=30;";

using (OracleConnection connection = new OracleConnection(connectionString)) {
    connection.Open();

    using (OracleCommand command = new OracleCommand("ALTER SESSION SET TIME_ZONE='UTC'", connection)) {
        command.ExecuteScalar();
    }

    using (OracleTransaction transaction = connection.BeginTransaction()) {
        const string procSql = @"BEGIN P_SERVICES.UPDATE_VERSION(:id, :version, :installDate); END;";
        using …
Run Code Online (Sandbox Code Playgroud)

.net c# oracle connection-pooling odp.net

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

.net ×1

c# ×1

connection-pooling ×1

odp.net ×1

oracle ×1