使用ado.net连接mysql连接池会超出设定的值

2020-06-25 20:24发布

问题:

最近遇到一个问题,在阿里云买了6台ECS服务器,在IIS上部署webapi应用程序,数据库用的是阿里云的rds mysql,webapi里面连接数据库的字符串都是带有 

 Pooling=true;Min Pool Size=200;Max Pool Size=200; 

这样设置理论上一个webapi应用不会超过200个连接数了,6台机器不会超过1200个连接数,但是通过阿里云数据库的后台监控会发现机器上的连接数也会超过200,6台机器总的连接数会超过1200,而且有时候到达6000以上,这个时候数据库就基本上挂了,园子里有人遇到过这种情况吗?

回答1:

该用using用,该Dispose用,避免连接在等待超时后才被动释放,影响池使用。



回答2:

把Min Pool Size和Max Pool Size改大写呢



回答3:

你的6台机器上都是只有一个webapi的实例连接db吗?



回答4:

暂时没有找到问题