一位工作了5年的粉丝来找我。他说,他参加了美团的面试,遇到了一个基础问题,但没能回答出来。问题是:“数据库连接池有什么用?它的关键参数是什么”?我说,这个问题我都不知道,那你项目中的连接池配置是怎么设置的?猜猜他是怎么回答的。明白明白啊。好了,关于这个问题,我们来看看普通人和专家的回答。普通人:数据库连接池的作用就是复用这个连接,这样可以降低应用程序和数据库之间建立连接的成本。从而提高整个应用程序和数据库访问的性能。师父:这个问题,我从这几个方面来回答。首先,数据库连接池是一种池化技术。池化技术的核心思想是实现资源的复用,避免重复创建和销毁资源的开销。在数据库应用场景中,应用程序每次对数据库发起增删改查操作,都需要创建一个连接。在大量数据库访问的情况下,频繁创建连接会带来较大的性能开销。连接池的核心思想是应用程序在启动时预先初始化一部分连接并保存在连接池中。当应用程序需要使用连接时,直接从连接池中获取已建立的连接。连接池的设计避免了每个连接的建立和释放带来的开销。连接池的参数有很多,但是只有几个关键参数:首先,连接池在初始化的时候,会有几个关键参数:初始连接数,表示连接中保存了多少个初始连接启动时池。最大连接数表示同时可以支持的最大连接数。如果连接数不够,后续获取连接的线程就会被阻塞。最大空闲连接数表示在没有请求时,连接池中最多保留的空闲连接数。最小空闲连接。当连接数小于这个值时,连接池需要创建连接来补充这个值。那么,就是使用连接时的关键参数了:最大等待时间就是连接池中的连接用完后等待新请求的时间。如果超过这个时间,会提示超时异常。Clearinvalidconnections,清理连接池中的无效连接,避免使用此连接操作时出错。不同的连接池框架,除了核心参数外,还有很多业务参数,比如是否检查连接sql的有效性,连接初始化sql等,这些配置参数可以用来查询api文档。知道。以上是我对这个问题的理解。总结一下这个问题再问下去,你会问最大连接数和最小连接数怎么设置?连接池的实现原理等等。所以建议粉丝们还是系统的学习一下。有什么面试问题,职业发展问题,学习问题可以私信我。版权声明:除特别声明外,本博客所有文章均采用CCBY-NC-SA4.0许可协议。转载请注明来自Mic带你学建筑!如果本文对您有帮助,请给个关注和点赞。您的坚持是我不断创作的动力。欢迎关注同名微信公众号获取更多技术干货!
