码迷,mamicode.com
首页 > 其他好文 > 详细

Firebird Connection pool is full

时间:2018-07-06 22:33:43      阅读:293      评论:0      收藏:0      [点我收藏+]

标签:div   for   pwd   nbsp   span   释放内存   系统配置   ring   技术分享   

今天在做Firebird V3.0.3  x64 版本内存测试,本地PC上,准备开启800个事务(保持不关闭),每个事务做些事,尽量不释放内存。

每次测试当事务数达到100时,就提示Connection pool is full,此时内存才吃到500+MB。

在系统配置里没有一个选项是最大连接数,最后发现是在连接字符串里,有个选项是 MaxPoolSize 。

令 MaxPoolSize = 1000 ,程序敞开跑,最后后台进程用到 5GB多,PC内存不够了。

以下是连接字符串:

 1 FbConnectionStringBuilder connBuilder = new FbConnectionStringBuilder();
 2 connBuilder.DataSource = "localhost";
 3 connBuilder.UserID = "sysdba";
 4 connBuilder.Password = "123456";
 5 connBuilder.Database = "x";
 6 connBuilder.Charset = "utf8";
 7 connBuilder.ServerType = FbServerType.Default;
 8 connBuilder.Dialect = 3;
 9 connBuilder.MaxPoolSize = 1000;
10 connBuilder.Pooling = true;
11 _connStr = connBuilder.ConnectionString;

测试程序:

 1     for (int i = 0; i < 800; i++)
 2     {
 3         var db = DbCtxt.NewDbContext().UseTransaction(true);
 4         for (int j = 0; j < 500; j++)
 5         {
 6             db.Insert("m_user").Column("code", "1234567890")
 7                 .Column("label", "ABCDEFGHIJ")
 8                 .Column("pwd", "1234").Column("is_del", false).Execute();
 9         }
10     }

内存占用:

技术分享图片

 

Firebird Connection pool is full

标签:div   for   pwd   nbsp   span   释放内存   系统配置   ring   技术分享   

原文地址:https://www.cnblogs.com/jonney-wang/p/9275617.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!