• springboot中关于连接池的几种方式


    springboot中没有像C#中那样的using这种关键字去自动断开数据库连接,尤其是使用mybatis的框架时,程序运行后,会导致数据库的连接数快速上升,长时间导致数据库性能下降。

    通过学习和了解,springboot中提出了有关连接池的概念,先不去管概念怎么解释的,本人理解就是一个自动回收,连接,调度数据库连接的一个功能。有点类似于window的自动回收。

      <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid-spring-boot-starter</artifactId>
                <version>1.1.17</version>
            </dependency>

    首先,引入插件

    然后,进行池化配置

    #druid配置
    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
    # druid参数调优(可选)
    # 初始化大小,最小,最大
    spring.datasource.initialSize=5
    spring.datasource.minIdle=5
    spring.datasource.maxActive=20
    # 配置获取连接等待超时的时间
    spring.datasource.maxWait=60000
    # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
    spring.datasource.timeBetweenEvictionRunsMillis=60000
    # 配置一个连接在池中最小生存的时间,单位是毫秒
    spring.datasource.minEvictableIdleTimeMillis=300000
    # 测试连接
    spring.datasource.testWhileIdle=true
    spring.datasource.testOnBorrow=false
    spring.datasource.testOnReturn=false
    # 打开PSCache,并且指定每个连接上PSCache的大小
    spring.datasource.poolPreparedStatements=true
    spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
    # 配置监控统计拦截的filters
    spring.datasource.filters=stat
    # asyncInit是1.1.4中新增加的配置,如果有initialSize数量较多时,打开会加快应用启动时间
    spring.datasource.asyncInit=true
  • 相关阅读:
    俄罗斯方块源码解析(带下载)[2]
    gridView基本操作
    俄罗斯方块源码解析 系列 更新
    俄罗斯方块源码解析(带下载)[1]
    《CLR Via C#》 学习心得一 CLR基础知识
    《CLR Via C#》 学习心得之二 类型基础
    《CLR Via C#》 学习心得之三 基元类型、引用类型和值类型
    观《大话设计模式》之——简单工厂模式
    观Fish Li《细说 Form (表单)》有感
    总结做了八个月asp.net程序员
  • 原文地址:https://www.cnblogs.com/sguozeng/p/16263048.html
Copyright © 2020-2023  润新知