文档章节

为应用添加数据库监控(采用 Druid)

jxlgzwh
 jxlgzwh
发布于 2014/11/21 16:06
字数 356
阅读 2337
收藏 22

1、使用dataSource,填写对应的URL username 和password就可以了!

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> 
      <!-- 基本属性 url、user、password -->
      <property name="url" value="your url" />
      <property name="username" value="your username" />
      <property name="password" value="your password" />

      <!-- 配置初始化大小、最小、最大 -->
      <property name="initialSize" value="1" />
      <property name="minIdle" value="1" /> 
      <property name="maxActive" value="20" />

      <!-- 配置获取连接等待超时的时间 -->
      <property name="maxWait" value="60000" />

      <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
      <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>
2、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>
3、因为我用Extjs 开发的后台,将监控页面嵌入到Extjs 中的代码如下:
Ext.define('Kl.view.DruidMonitor', {
    extend: 'Ext.panel.Panel',
    alias: 'widget.druidmonitor',

    height: 250,
    html: '<iframe src=\'../../druid\' height=\'100%\' width=\'100%\'> </iframe>',
    width: 400,
    title: '数据库监控',
    initComponent: function() {
        var me = this;
        me.callParent(arguments);
    }

});
最后贴上效果图:

© 著作权归作者所有

共有 人打赏支持
jxlgzwh
粉丝 52
博文 231
码字总数 95400
作品 1
深圳
程序员
加载中

评论(3)

思念远方
思念远方
有没有把监控数据存储的数据库呢
jxlgzwh
jxlgzwh

引用来自“车开源”的评论

请问在使这个连接池有没有试过运行隔一段时间再访问应用就提示数据库连接错误?
现在还没有出现这个错误!
车开源
车开源
请问在使这个连接池有没有试过运行隔一段时间再访问应用就提示数据库连接错误?
Druid使用配置初步理解

Druid是什么? Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。 ...

chenhuaming
2016/10/08
157
0
使用Druid监控SQL执行状态

本文使用Druid的连接池替换掉原来的C3P0连接池,然后配置Druid的相关属性,完成对Spring web工程的JDBC监控。 其实,我采用Druid替换其它连接池,最关键的一个理由是Druid有对SQL执行的监控统...

王孟君
2016/11/15
3.1K
8
【开源访谈】Druid 作者温绍锦访谈实录

关于开源访谈 开源访谈是开源中国推出的一系列针对国内优秀开源软件作者的访谈,以文字的方式记录并传播。我们希望开源访谈能全面的展现国内开源软件、开源软件作者的现状,着实推动国内开源...

虫虫
2012/08/22
14.5K
29
Javaweb配置最全的数据源配置

DBCP DBCP是Apache推出的数据库连接池(Database Connection Pool)。 操作步骤: 添加jar包: commons-dbcp-1.4.jar commons-pool-1.5.6.jar 添加属性资源文件 dbcpconfig.properties文件。 ...

---dgw博客
2017/10/18
0
0
阿里Druid数据连接池在SSM框架中的配置使用

Druid数据连接池简介 首先可以参考阿里在GitHub给出的一些说明: Druid是Java语言中最好的数据库连接池。Druid能够提供强大的监控和扩展功能。 性能好,同时自带监控页面,可以实时监控应用的...

似水的流年
2017/12/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

高三暑假我是怎么想开去学linux系统的

高三的时候,我有一句口头禅:“老了老了,现在做题越来越迟钝了”。当时整天日夜苦读,体重日益增加,脸色越来越黯淡,我在终于熬过了高考的时候,简直心里面乐得开了花。我终于可以去做自己...

linuxprobe16
25分钟前
0
0
Python 获得命令行参数的方法

需要模块:sys 参数个数:len(sys.argv) 脚本名: sys.argv[0] 参数1: sys.argv[1] 参数2: sys.argv[2]

编程老陆
32分钟前
0
0
链队

队列用链表来表示时,需要用两个变量来记录队列两端的变化:theFront,theBack. 根据链接方向的不同,链队有两种链接方式(其实就是链表的头插入节点和尾插入节点,头删除节点和尾删除节点)。...

Frost729
36分钟前
0
0
IDEA toString() json模板

public java.lang.String toString() {java.lang.StringBuilder builder = new java.lang.StringBuilder();#set ($i = 0)#foreach ($member in $members)#if ($i == 0)builder.appen......

Mtok
45分钟前
0
0
Dubbo内核实现之SPI简单介绍

Dubbo采用微内核+插件体系,使得设计优雅,扩展性强。那所谓的微内核+插件体系是如何实现的呢!即我们定义了服务接口标准,让厂商去实现(如果不了解spi的请谷歌百度下), jdk通过ServiceLo...

明理萝
50分钟前
0
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部