Druid简单使用配置及其介绍_第1页
Druid简单使用配置及其介绍_第2页
Druid简单使用配置及其介绍_第3页
Druid简单使用配置及其介绍_第4页
Druid简单使用配置及其介绍_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、DruidDruid简单使用配置及介绍简单使用配置及介绍惠买集团Guanping.Li2Druid介绍介绍Druid介绍介绍 Druid是阿里巴巴的温少(温绍锦)团队开发的。 Druid是什么? druid凭借其出色的性能成为一名数据库连接池的后起之秀. Druid Druid首先是一个数据库连接池(DruidDataSource),它还包含一个ProxyDriver(Filter-Chain模式驱动代理),一系列内置的JDBC组件库,一个SQL Parser(解析)。 一、一、强大的监控特性强大的监控特性: 通过Druid提供的监控功能,可以清楚知道连接池和SQL的工作情况。1、监控SQL的

2、执行时间、ResultSet持有时间、返回行数、更新行数、错误次数、错误堆栈信息。2、SQL执行的耗时区间分布。什么是耗时区间分布呢?比如说,某个SQL执行了1000次,其中01毫秒区间50次,110毫秒800次,10100毫秒100次,1001000毫秒30次,110秒15次,10秒以上5次。通过耗时区间分布,能够非常清楚知道SQL的执行耗时情况。 3、监控连接池的物理连接创建和销毁次数、逻辑连接的申请和关闭次数、非空等待次数、PSCache命中率等。二、方便扩展:二、方便扩展:Druid提供了Filter-Chain模式的扩展API,可以自己编写Filter拦截JDBC中的任何方法,可以在

3、上面做任何事情,比如说性能监控、SQL审计、用户名密码加密、日志等等。 Druid内置提供了用于监控的StatFilter、日志输出的Log系列Filter、防御SQL注入攻击的WallFilter。另外还有用于数据库密码加密的CirceFilter,以及和Web、Spring关联监控的DragoonStatFilter。Guanping.Li3Druid介绍介绍三、三、优秀特性优秀特性: 1、ExceptionSorter。当一个连接产生不可恢复的异常时,例如Oracle error_code_28 session has been killed,必须立刻从连接池中逐出,否则会产生大量错误.

4、目前只有Druid和JBoss DataSource实现了ExceptionSorter. 2、PSCache内存占用优化对于支持游标的数据库(Oracle、SQL Server、DB2等,不包括MySql),PSCache可以大幅度提升SQL执行性能。一个PreparedStatement对应服务器一个游标,如果PreparedStatement被缓存起来重复执行,PreparedStatement没有被关闭,服务器端的游标就不会被关闭,性能提高非常显著。在类似“SELECT * FROM T WHERE ID = ?”这样的场景,性能可能是一个数量级的提升。但在Oracle JDBC Dr

5、iver中,其他的数据库连接池(DBCP、JBossDataSource)会占用内存过多,极端情况可能大于1G。Druid调用OracleDriver提供管理PSCache内部API。 3、LRU(Least Recently Used近最少使用)是一个性能关键指标,特别Oracle,每个Connection对应数据库端的一个进程,如果数据库连接池遵从LRU,有助于数据库服务器优化,这是重要的指标。Druid、DBCP、Proxool、JBoss是遵守LRU的。BoneCP、C3P0则不是。BoneCP在mock环境下性能可能还好,但在真实环境中则就不好了。四、四、Maven中中druid的的

6、Jar包引用包引用:在Maven中引用druid比较新的Jar包,在我的环境中导入了druid源码,项目则可引用源码项目druidMaster com.alibaba druid 1.0.24在在Java Build Path -Projects Java Build Path -Projects - druidMaster- druidMasterGuanping.Li4Druid配置DruidDataSource数据源Guanping.LiDruid配置主要有以下几项:配置主要有以下几项: 配置配置_DruidDataSource数据源数据源 配置配置_StatFilter 配置配置_St

7、atViewServlet 配置配置_WebStatFilter 配置配置_Druid和和Spring关联监控关联监控 配置配置_使用使用ConfigFilter1、配置、配置_DruidDataSource数据源:以下是一个参考的连接池配置:数据源:以下是一个参考的连接池配置: (context-datasource-jdbc.xml) #confcom.driver #confcom.url #confcom.user #confcom.passwd Druid配置配置5 Druid配置DruidDataSource数据源Guanping.Li6Guanping.Li 2 、配置配置_St

8、atFilter: Druid的监控统计功能是通过filter-chain扩展实现 配置_StatFilter7Guanping.Li !-2、组合配置:StatFilter可以和其他的Filter配置使用 - !-3、使用proxyFilters属性配置:通过bean的方式配置, 备注:与BeanI:stat-filter 配合使用,其中filters和proxyFilters属性是组合关系的,不是替换的, 在上面的配置中,dataSource有了两个Filter,StatFilter和Log4jFilter - !- StatFilter支持一种简化配置方式,和上面4的配置等同的 -配置_

9、StatFilter8Guanping.Li !-也可以通过connectProperties属性来打开mergeSql功能, 或者通过增加JVM的参数配置:-Ddruid.stat.mergeSql=true - 其中:!-5、合并多个合并多个DruidDataSource的监控数据的监控数据: 通过jvm启动参数来指定和全部使用jvm启动参数来配置如下所示-Ddruid.useGlobalDataSourceStat=true-Ddruid.filters=mergeStat -Ddruid.useGlobalDataSourceStat=true配置_StatFilter9通过jvm启动

10、参数配置Guanping.Li10配置_StatViewServletGuanping.Li3、配置配置_StatViewServlet: Druid内置提供了一个StatViewServlet用于展示Druid的统计信息。这个StatViewServlet的用途包括: 1).提供监控信息展示的html页面 2).提供监控信息的JSON API StatViewServlet是一个标准的javax.servlet.http.HttpServlet,需要配置在你web应用中的WEB-INF/web.xml中。 DruidWebStatFilter com.alibaba.druid.suppor

11、t.http.WebStatFilter exclusions *.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/* sessionStatMaxCount 1000 sessionStatEnable true 11Guanping.Li principalSessionName 802720.user principalCookieName admin.user profileEnable true DruidWebStatFilter /* 配置_StatViewServlet12配置_WebStatFilterGuanping.Li、配置、配置_Web

12、StatFilter:(配置allow和deny)StatViewSerlvet 展示出来的监控信息比较敏感,是系统运行的内部情况,如果你需要做访问控制,可以配置allow和deny这两个参数。判断规则:deny优先于allow,如果在deny列表中,就算在allow列表中,也会被拒绝。如果allow没有配置或者为空,则允许所有访问。比如: DruidStatView com.alibaba.druid.support.http.StatViewServlet resetEnable true loginUsername druid 13配置_WebStatFilter loginPasswo

13、rd druid allow /24, deny DruidStatView /druid/* Guanping.Li14配置_Druid和Spring关联监控Guanping.Li5、配置、配置_Druid和和Spring关联监控关联监控 (context-component-scan.xml)Druid提供了Spring和Jdbc的关联监控:com.alibaba.druid.support.spring.stat.DruidStatInterceptor是一个标准的Spring MethodInterceptor。可以灵活进行AOP配置。 druid-stat-intercept

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论