当前位置: 首页 > news >正文

甘肃省网站建设_网站建设公司_CSS_seo优化

如何知道网站后台地址,聊城优化网站建设,阿里云 wordpress 响应时间,腾讯云cdn wordpressDbContextPool 是 ASP.NET Core 2.1 引入的新特性#xff0c;可以节省创建 DbContext 实例的开销#xff0c;但没有想到其中藏着一个小坑。最近有一个 ASP.NET Core 项目持续运行一段时间后日志中就会出现数据库连接池达到最大连接数限制的错误#xff1a;System.InvalidOpe… DbContextPool 是 ASP.NET Core 2.1 引入的新特性可以节省创建 DbContext 实例的开销但没有想到其中藏着一个小坑。最近有一个 ASP.NET Core 项目持续运行一段时间后日志中就会出现数据库连接池达到最大连接数限制的错误System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached. at System.Data.Common.ADP.ExceptionWithStackTrace(Exception e)开始以为是哪个地方的代码造成 DbContext 不能正常 Dispose 但在代码中没有找到任何相关线索。后来实在没有其他可以怀疑的地方唯有 DbContextPool 于是尝试去掉 DbContextPool 结果错误就消失了。果然是 DbContextPool 引起的但让人纳闷的是 DbContextPool 本来就是为了节省创建 DbContext 实例的开销怎么反而消耗更多数据库连接而且这个项目的负载很低怎么可能把整个连接池都消耗殆尽呢今天在周会上谈了这个怪问题后来突然想到每个 DbContext 实例都会占用一个数据库连接SqlConnection不启用 DbContextPool 的时候请求一结束对应 DbContext 实例就被 Dispose 数据库连接就会被放回连接池。而使用 DbContextPool 的时候请求结束后 DbContext 不会被 Dispose 而是被放回 DbContextPool DbContext 被放回属于自己的池中就意味它对应的数据库连接不会被放回它所属的连接池。DbContextPool 中的每一个 DbContext 都对应一个数据库连接DbContextPool 中每多一个 DbContext 数据库连接池中就会少一个数据库连接。当这两个池的大小不一样且 DbContextPool 大于数据库连接池问题就来了DbContextPool 根据自家池假设是128子的大小畅快地向池中填 DbContext 浑然不顾数据库连接池的大小(假设是100)当填到第 101 个 DbContext 时就会出现上面的错误。这个项目中用的都是默认设置是不是默认设置就会触发这个问题呢查看 DbContextPool 的 实现源码 发现池的默认大小限制是 128public static IServiceCollection AddDbContextPoolTContext( [NotNull] this IServiceCollection serviceCollection, [NotNull] ActionDbContextOptionsBuilder optionsAction,int poolSize 128)where TContext : DbContext AddDbContextPoolTContext, TContext(serviceCollection, optionsAction, poolSize);查看 SqlConnention 的 实现源码 发现连接池的默认大小限制是 100internal const int Max_Pool_Size 100;默认设置就会触发问题实实在在的一个小坑。知道了原因解决起来就很简单了将 DbContextPool 的 poolSize 设置为小于数据库连接池的 Max_Pool_Sizeservices.AddDbContextPoolJobDb(option option.UseSqlServer(Configuration.DbConnectionStr()), poolSize: 64);原文地址https://www.cnblogs.com/dudu/p/10398225.html.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com
http://www.ihoyoo.com/news/90061.html

相关文章:

  • 网站开发英文合同校园网站建设
  • 南京建设信息网站网站app推广怎么做
  • 搬瓦工可以长期做网站python安装wordpress
  • 便宜网站建设价格线上营销的优势和劣势
  • 重庆媒体网站建设单价网站优化制作
  • 内蒙建设厅网站怎么查建筑电工证织梦网站地图模板修改
  • 做3d效果图的网站做衬衫的作业网站
  • 网站架设标准wordpress变成静态网页
  • 长春网站制作都找源晟27深圳专业专业网站建设公司
  • 查网站的关键词排名吗做网站看百度脸色
  • 合肥seo网站优化培训微信游戏小程序代理
  • 商城网站页面模板东莞网站制作网站
  • 高端的培训行业网站开发flash网站建设技术...
  • 安庆网站制作商标logo设计图案
  • 作业做哪些类型的网站什么装修网站做的好的
  • 百度做网站为什么上阿里云备案搜索引擎关键词优化技巧
  • 网站建设属于那个科目淘宝网站可以做轮播吗
  • xxx网站建设规划河南省和城乡建设厅网站
  • 视频网站开发 视频采集wordpress 自定义结构
  • 诸暨公司制作网站需要哪些宁波哪个公司建网站
  • app优化网站建设数据分析师报考条件及科目
  • 沈阳自助建站软件php源码建站 一品资源
  • 网站建设的知名品牌wordpress出不来安装界面
  • iis7部署网站哪里的佛山网站建设
  • 网叶制作郑州网站seo哪家公司好
  • 如何制作网站二维码百度指数不高的网站怎么优化
  • 珠海建站模板wordpress后台登录慢
  • 临沧市建设局网站网页设计与制作模板及素材
  • 中山做网站联系电话wordpress+打断点
  • 做外贸在什么网站好定制一款软件需要多少钱