Alibaba Druid 数据源监控

发布于 2024-02-29 22:13:26 字数 3736 浏览 23 评论 0

阿里巴巴 Druid 数据库连接池上写着这一句话,为监控而生的数据库连接池,确实,Druid 在数据库连接池监控上做得非常完善。

你可以克隆下来然后安装到你的额本地仓库中

关于 Druid 的中文文档,你可以在 这里 查看到。下面主要完成项目中如何集成集成 Druid,如果你使用的 Maven,你需要加入 Druid 的依赖

<!--  https://mvnrepository.com/artifact/com.alibaba/druid  -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid</artifactId>
    <version>1.0.26</version>
</dependency>

如果你使用的是 Gradle,你需要在 denpendencies 中加入

compile 'com.alibaba:druid:1.0.26'

然后再 spring 的配置文件中配置数据源

<bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
    <property name="driverClassName" value="${driver}" />
    <property name="url" value="${url}" />
    <property name="username" value="${user}" />
    <property name="password" value="${password}" />
    <!-- 初始化连接大小 -->
    <property name="initialSize" value="${initialSize}"></property>
    <!-- 连接池最大数量 -->
    <property name="maxActive" value="${maxActive}"></property>
	<!-- 连接池最小空闲 -->
    <property name="minIdle" value="${minIdle}"></property>
    <!-- 获取连接最大等待时间 -->
    <property name="maxWait" value="${maxWait}"></property>
    <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
  	<property name="timeBetweenEvictionRunsMillis" value="60000" />
  	<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
    <property name="minEvictableIdleTimeMillis" value="300000" />
    <property name="validationQuery" value="SELECT 'x'" />
    <property name="testWhileIdle" value="true" />
    <property name="testOnBorrow" value="false" />
    <property name="testOnReturn" value="false" />
    <!-- 如果用 Oracle,则把 poolPreparedStatements 配置为 true,mysql 可以配置为 false。分库分表较多的数据库,建议配置为 false。 -->
    <!-- 打开 PSCache,并且指定每个连接上 PSCache 的大小 -->
    <property name="poolPreparedStatements" value="true" />
    <property name="maxPoolPreparedStatementPerConnectionSize" value="20" />
    <!-- 配置监控统计拦截的 filters -->
    <property name="filters" value="stat" /> 
</bean>

db.properties 配置文件

driver=com.mysql.jdbc.Driver
url=jdbc: mysql://localhost:3306/ssm 
user=root
password=root
initialSize=5
maxActive=20
minIdle=1
maxWait=60000

最后,我们还需要在 web.xml 加入

<servlet>
  <servlet-name>DruidStatView</servlet-name>
  <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>DruidStatView</servlet-name>
    <url-pattern>/druid/*</url-pattern>
</servlet-mapping>

启动服务器,访问 http://localhost:8080/ProjectName/druid

可以看到

具体项目看 我的项目

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

木森分化

暂无简介

0 文章
0 评论
22 人气
更多

推荐作者

我们的影子

文章 0 评论 0

素年丶

文章 0 评论 0

南笙

文章 0 评论 0

18215568913

文章 0 评论 0

qq_xk7Ean

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文