Druid

JDBC 连接池、监控组件
授权协议 Apache 2.0
开发语言 Java
所属分类 程序开发、 数据库连接池
软件类型 开源软件
地区 国产
投 递 者 段干茂实
操作系统 跨平台
开源组织 阿里巴巴
适用人群 未知
 软件概览

Druid是一个JDBC组件,它包括三部分: 

  • DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系。 

  • DruidDataSource 高效可管理的数据库连接池。 

  • SQLParser 

Druid可以做什么? 

1) 可以监控数据库访问性能,Druid内置提供了一个功能强大的StatFilter插件,能够详细统计SQL的执行性能,这对于线上分析数据库访问性能有帮助。 

2) 替换DBCPC3P0。Druid提供了一个高效、功能强大、可扩展性好的数据库连接池。 

3) 数据库密码加密。直接把数据库密码写在配置文件中,这是不好的行为,容易导致安全问题。DruidDruiver和DruidDataSource都支持PasswordCallback。 

4) SQL执行日志,Druid提供了不同的LogFilter,能够支持Common-LoggingLog4j和JdkLog,你可以按需要选择相应的LogFilter,监控你应用的数据库访问情况。 

扩展JDBC,如果你要对JDBC层有编程的需求,可以通过Druid提供的Filter-Chain机制,很方便编写JDBC层的扩展插件。 

如下是一个基于Druid内置扩展StatFilter的监控实现:

Druid 的 JavaDoc 文档请看

http://tool.oschina.net/apidocs/apidoc?api=druid0.26

  • springboot学习笔记11:集成Druid 什么是Druid Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池。 Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C3P0、DBCP 等 DB 池的优点,同时加入了日志监控。 Druid 可以很好的监控 DB 池连接和 SQL 的执行情况,天生就是针对监控而生的 DB 连接池。 Druid

  • 2.1 Druid(德鲁伊)数据库连接池 Druid是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、Proxool等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池,可以说是目前最好的连接池之一。 方式一:未使用配置文件 使用Druid数据库连接池实现数据库的连接 DataSource作为数据库连接池技术的起始点。

 相关资料
  • 我正在尝试在webspphere自由服务器上为oracle数据库启用连接池指标。根据此留档https://www.ibm.com/docs/en/was-liberty/nd?topic=10-connectionpool-monitoring在功能管理器中添加监视器-1.0功能并添加此行WebSphere: type=ConnectionPoolStats, name= 我正在使用jmx_exp

  • 我对连接池有一些疑问。在SQL Server连接池文章中提到的内容类似于“打开新连接时,如果连接字符串与现有池不完全匹配,则会创建一个新池。每个进程、每个应用程序域、每个连接字符串以及使用集成安全性时、每个Windows标识将连接池化。” 现在我有了自己的windows窗体应用程序,它具有SQL连接。 > 所以当我打开应用程序时,SQL连接首次打开,并创建了一个池。所以,如果我关闭应用程序池会被自

  • 作为一个专业的服务端开发工程师,我们必须要对连接池、线程池、内存池等有较深理解,并且有自己熟悉的库函数可以让我们轻松驾驭这些不同的 池子。既然他们都叫某某池,那么他们从基础概念上讲,原理和目的几乎是一样的,那就是 复用。 以连接池做引子,我们说说服务端工程师基础必修课。 从我们应用最多的 HTTP 连接、数据库连接、消息推送、日志存储等,所有点到点之间,都需要花样繁多的各色连接。为了传输数据,我们

  • 连接池是客户端内的一个对象,主要是维持现有节点的连接。理论上来讲,节点只有死节点与活节点。 然而在现实世界中,事情绝不会这么明确。有时候节点是处在 “可能挂了但还未确认” 、 “连接超时但未知原因” 或 “最近挂过但现在可用” 的灰色地带中。而连接池的工作就是管理这些无规则的连接,并为客户端提供最稳定的连接状态。 如果一个连接池找不到一个活节点来发送查询,那么就会返回一个 NoNodesAvail

  • Swoole 在 v4 版本后内置了 Library 模块,使用 PHP 代码编写内核功能,使得底层设施更加稳定可靠,并且提供了内置协程连接池,本章节会说明如何使用对应的连接池。 也可以观看Swoole微课程视频教程学习内置连接池的使用。 ConnectionPool ConnectionPool,原始连接池,基于Channel自动调度,支持传入任意构造器(callable),构造器需返回一个连接

  • 安装 composer require hyperf/pool 为什么需要连接池? 当并发量很低的时候,连接可以临时建立,但当服务吞吐达到几百、几千的时候,频繁 建立连接 Connect 和 销毁连接 Close 就有可能会成为服务的一个瓶颈,那么当服务启动的时候,先建立好若干个连接并存放于一个队列中,当需要使用时从队列中取出一个并使用,使用完后再反还到队列去,而对这个队列数据结构进行维护的,就

  • 由于 Swoole 的常驻内存特性,所以 imi 中实现了连接池。所有的数据库、Redis连接,都通过连接池去获取。 定义连接池 连接池的配置,可以写在项目配置文件中,也可以写在服务器配置文件中。 在配置文件中有一个pools节点,里面配置的是连接池。 同步池子仅在task进程使用,异步池子在worker进程使用。一般使用时无需自行判断在哪个进程,框架会自动帮你获取对应的连接。 获取连接 获取池子

  • 连接池是一种标准技术,用于在内存中维护长时间运行的连接,以便有效地重用,并为应用程序可能同时使用的连接总数提供管理。 特别是对于服务器端Web应用程序,连接池是在内存中维护活动数据库连接“池”的标准方法,这些活动数据库连接在请求之间重复使用。 sqlAlchemy包括几个连接池实现,这些实现与 Engine . 它们还可以直接用于希望向其他普通DBAPI方法添加池的应用程序。 连接池配置 这个 E