Asp.net mvc 如果在并发系统的整个应用程序中使用一个数据库连接实例,会发生什么?
我正在从事asp.NETMVC+WebAPI实体框架代码第一个项目,并使用异步方法。目前,我正在按每次呼叫创建数据库连接 创建数据库连接花费的时间很短, 因此,对服务器的每个请求都需要很短的时间来创建数据库连接, 对于上千个请求,这需要更多的时间Asp.net mvc 如果在并发系统的整个应用程序中使用一个数据库连接实例,会发生什么?,asp.net-mvc,entity-framework,asp.net-web-api,ef-code-first,database-connection,Asp.net Mvc,Entity Framework,Asp.net Web Api,Ef Code First,Database Connection,我正在从事asp.NETMVC+WebAPI实体框架代码第一个项目,并使用异步方法。目前,我正在按每次呼叫创建数据库连接 创建数据库连接花费的时间很短, 因此,对服务器的每个请求都需要很短的时间来创建数据库连接, 对于上千个请求,这需要更多的时间 现在,我的问题是,如果我在整个应用程序中使用一个数据库连接实例,那么会发生什么?SQL Server和Oracle都有连接池,因此数据库连接背后的实际资源通常会被重用,即使您为每个调用创建了一个连接类 如果您有一个单例连接,您将不能有并发数据库请求。数
现在,我的问题是,如果我在整个应用程序中使用一个数据库连接实例,那么会发生什么?SQL Server和Oracle都有连接池,因此数据库连接背后的实际资源通常会被重用,即使您为每个调用创建了一个连接类 如果您有一个单例连接,您将不能有并发数据库请求。数据库将出现单线程瓶颈
连接池将根据实际应用的并发性而增长和缩小。
您也应该考虑缓存策略。可能有一些数据不需要每次都从数据库中检索,或者在项目过时时具有刷新缓存的机制。