1、充当数据库连接池。
2、可以监控数据库访问性能
3、获得SQL执行日志

今天在项目的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>

百度搜索得到一番解释
Druid内置提供了一个StatViewServlet用于展示Druid的统计信息。
这个StatViewServlet的用途包括:
1.提供监控信息展示的html页面
2.提供监控信息的JSON API
关于使用StatViewServlet,建议使用druid 0.2.6以上版本。
根据配置中的url-pattern来访问内置监控页面,如果是上面的配置,内置监控页面的首页是/druid/index.html

如果数据库连接池使用的是druid,druid是有监控页面的,通过druid的监控页面,我们可以检测每条sql语句的执行时间,执行次数等,还可以看到spring中加载的bean
在数据库配置文件中添加

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"init-method="init" destroy-method="close"><property name="url"><value>${jdbc.url}</value></property><property name="username"><value>${jdbc.username}</value></property><property name="password"><value>${jdbc.password}</value></property><property name="initialSize"><value>${jdbc.initialSize}</value></property><property name="maxActive"><value>${jdbc.maxActive}</value></property><property name="proxyFilters"><list><ref bean="stat-filter" /></list></property><property name="maxWait" value="${jdbc.maxWait}" /><property name="minIdle" value="${jdbc.minIdle}" /><property name="timeBetweenEvictionRunsMillis"value="${jdbc.timeBetweenEvictionRunsMillis}" /><property name="minEvictableIdleTimeMillis"value="${jdbc.minEvictableIdleTimeMillis}" /><property name="validationQuery" value="${jdbc.validationQuery}" /><property name="testWhileIdle" value="${jdbc.testWhileIdle}" /><property name="testOnBorrow" value="${jdbc.testOnBorrow}" /><property name="testOnReturn" value="${jdbc.testOnReturn}" /><property name="maxOpenPreparedStatements"value="${jdbc.maxOpenPreparedStatements}" /><!-- 打开 removeAbandoned 功能 --><property name="removeAbandoned" value="${jdbc.removeAbandoned}" /><!-- 1800 秒,也就是 30 分钟 --><property name="removeAbandonedTimeout"value="${jdbc.removeAbandonedTimeout}" /><!-- 关闭 abanded 连接时输出错误日志 --><property name="logAbandoned" value="${jdbc.logAbandoned}" /><!-- 打开PSCache,并且指定每个连接上PSCache的大小 --><property name="poolPreparedStatements"value="${jdbc.poolPreparedStatements}" /><property name="maxPoolPreparedStatementPerConnectionSize"value="${jdbc.maxPoolPreparedStatementPerConnectionSize}" /><!--&lt;!&ndash; 超过时间限制是否回收 &ndash;&gt;--><!--<property name="removeAbandoned" value="true" />--><!--&lt;!&ndash; 超时时间;单位为秒。180秒=3分钟 &ndash;&gt;--><!--<property name="removeAbandonedTimeout" value="180" />--><!--&lt;!&ndash; 关闭abanded连接时输出错误日志 &ndash;&gt;--><!--<property name="logAbandoned" value="true" />-->
</bean><bean id="stat-filter" class="com.alibaba.druid.filter.stat.StatFilter"><property name="slowSqlMillis" value="10000" /><property name="logSlowSql" value="true" /><property name="mergeSql" value="true" />
</bean><bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource"><ref bean="dataSource" /></property>
</bean>

db.properties配置文件中

jdbc.url=数据库地址
jdbc.username=数据库用户名
jdbc.password=数据库密码
//定义初始连接数
jdbc.initialSize=5//定义最大连接数
jdbc.maxActive=200
//定义最长等待时间
jdbc.maxWait=60000
//最小空闲连接
jdbc.minIdle=10//当timeBetweenEvictionRunsMillis 大于0时
//每过timeBetweenEvictionRunsMillis 时间,就会启动一个线程,
//校验连接池中闲置时间超过minEvictableIdleTimeMillis的连接对象
jdbc.timeBetweenEvictionRunsMillis=60000jdbc.minEvictableIdleTimeMillis=300000
//给出一条简单的sql语句进行验证
jdbc.validationQuery=SELECT 'x'
//连接空闲时是否进行有效性验证(即是否还和数据库连通的)
jdbc.testWhileIdle=true
//取得连接时是否进行有效性验证(即是否还和数据库连通的
jdbc.testOnBorrow=false
//返回连接时是否进行有效性验证(即是否还和数据库连通的)
jdbc.testOnReturn=false
//要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true。
//在Druid中,不会存在Oracle下PSCache占用内存过多的问题,可以把这个数值配置大一些,比如说100
jdbc.maxOpenPreparedStatements=20
//打开removeAbandoned功能
jdbc.removeAbandoned=true
//1800秒,也就是30分钟
jdbc.removeAbandonedTimeout=1800
//关闭abanded连接时输出错误日志
jdbc.logAbandoned=true
//是否缓存preparedStatement,也就是PSCache。
//PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭
//打开PSCache,并且指定每个连接上PSCache的大小
jdbc.poolPreparedStatements=true
jdbc.maxPoolPreparedStatementPerConnectionSize=20
//最小程序池
jdbc.minPoolSize=2
//连接的最大空闲时间
jdbc.maxIdleTime=30000
//隔多少秒检查所有连接池中的空闲连接,默认为0表示不检查
jdbc.idleConnectionTestPeriod=100

在pom.xml文件中添加依赖

     <dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.17</version></dependency>

这样就可以查看监控数据

关于DruidStatView监控信息相关推荐

  1. SpringBootAdmin监控信息讲解

    我们搭建了一个SpringBoot Admin监控平台,用来监控我们的SpringBoot项目,我们的平台运行以后,现在可以监控到HelloWorld的项目了,其实这个就是我们在运行的SpringBo ...

  2. python调用libvirt_通过python获取kvm虚拟机的监控信息(基于libvirt API)

    通常在我们的云环境中,为了保证云平台中虚拟机的正常运行,基本都需要这样一个功能,就是收集虚拟机的监控数据,比如cpu的使用率.内存的使用率.磁盘io.网络io等基本信息.可以利用这些信息及时调整云平台 ...

  3. Skywalking-04:扩展Metric监控信息

    扩展 Metric 监控信息 官方文档 Source and Scope extension for new metrics 案例:JVM Thread 增加 Metrics 修改 Thread 的定 ...

  4. 北斗中小渔船安全动态监控信息解决方案

    一直以来,船舶渔业的发展都是我国海洋业十分重视的领域,其从古代开始则一直存在发展到如今已十分成熟,让不少渔民有了稳定且不低的收入.但是,随着如今越来越复杂的海洋环境及各种突发的人为事件,敲响了海洋渔业 ...

  5. 新能源汽车监控信息共享应用平台功能及应用探讨

    新能源汽车监控信息共享应用平台功能及应用探讨 导读 面向实战应用场景构建的跨部门跨网络新能源汽车监控信息共享应用平台,不仅建立了新能源汽车国家监测管理平台与公安交通集成指挥平台之间的联系,而且也为新能 ...

  6. Spring Boot 监控信息邮件报警通知

    在Spring Boot Admin Server中 进行设置 1.添加依赖 <dependency><groupId>org.springframework.boot< ...

  7. 服务器 监控信息,服务器 监控信息 怎么看

    服务器 监控信息 怎么看 内容精选 换一换 您可以通过华为云的域名注册服务管理您的域名,如表1所示. 将云服务器添加到监控表中.注册到监控表中的云服务会被ceilometer周期性采集监控数据,包括平 ...

  8. 服务器 监控信息 怎么看,服务器 监控信息 怎么看

    服务器 监控信息 怎么看 内容精选 换一换 您可以通过华为云的域名注册服务管理您的域名,如表1所示. 将云服务器添加到监控表中.注册到监控表中的云服务会被ceilometer周期性采集监控数据,包括平 ...

  9. nagios存入 mysql数据说明与提取_4.使用NDOUtils将Nagios监控信息存入数据库

    使用NDOUtils将Nagios监控信息存入数据库 1.NDOUtils安装需求: Nagios正确安装运行,版本>=2.0安装目录:/usr/local/nagios MySQL正确安装并运 ...

最新文章

  1. 安装 sklearn 报错 ImportError: cannot import name Type
  2. 汉塔克问题(C语言递归)
  3. Lumen开发:如何向 IoC 容器中添加自己定义的类
  4. CSDN社区之星专訪:我的蜕变之路
  5. 计算机应用管理试题,学习管理系统中计算机应用试卷试题及答案.docx
  6. IDEA:com.intellij.execution.ExecutionException: not found for the web module.
  7. CS-- WebService、 windowsService
  8. cdn加载插件和npm安装的差别_免费、快速且可靠的开源CDN-jsDelivr
  9. StringUtil字符串小工具-功能扩展
  10. Java读取URL到字符串
  11. mysql查看实例下的表_mysql 实例下具体查看库,和表的大小
  12. ARX二次开发 遍历删除所有的约束
  13. cd40系列芯片_CD40系列74系列芯片
  14. 14.Veeam BR14 配置信息备份与恢复
  15. 秀和vs太田雄藏(依田纪基讲定式,欺骗感情)
  16. 解决无线路由器wds桥接频繁掉线的办法
  17. 雷军:把UCWEB做成像GOOGLE一样伟大
  18. ffmpeg插帧算法
  19. 对彩色花图像进行分类-基于R语言的Keras实现
  20. js:字符串(string)转json

热门文章

  1. Bash 实例,第 2 部分
  2. A Complete Example
  3. Android 实现九宫格、点击图片放大全屏浏览等
  4. php 导出csv文件
  5. 基于RulesEngine的业务规则实现
  6. IOS初级:UIScrollView UIPageControl
  7. Firefox常用插件
  8. 推荐一个AutoCad查看器——Free DWG Viewer试用
  9. MyBatis mapper 注解过程中通过 LanguageDriver 实现动态 SQL
  10. Asp程序做页面的301跳转,使得cnasda.com跳转到www.cnasda.com