-
Notifications
You must be signed in to change notification settings - Fork 8.6k
FAQ
English | 中文
FAQ
Druid is one of the best database connection pools written in JAVA. Druid provides powerful monitoring functionalities and more.
-
released version download:
github downloads : https://github.com/alibaba/druid/downloads
maven central repository: http://central.maven.org/maven2/com/alibaba/druid/
Alibaba open source repository: http://code.alibabatech.com/mvn/releases/com/alibaba/druid/ -
snapshot versions
http://code.alibabatech.com/mvn/snapshots/com/alibaba/druid/
Druid is an open source project which is hosted on Github, source code repository: https://github.com/alibaba/druid
Since 0.1.18, druid has been deployed to the maven central repository. Add the dependency to the pom.xml as below
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>${druid-version}</version>
</dependency>
Druid monitoring feature is implemented through filter-chain. To turn it on, config StatFilter, example: https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_StatFilter
The built-in monitoring page is a Servlet. To configure: https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_StatViewServlet%E9%85%8D%E7%BD%AE
- Web related monitoring config
https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_%E9%85%8D%E7%BD%AEWebStatFilter - Spring related monitoring config
https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_Druid%E5%92%8CSpring%E5%85%B3%E8%81%94%E7%9B%91%E6%8E%A7%E9%85%8D%E7%BD%AE
Druid provides WallFilter, it is based on the SQL semantic analysis to defense SQL injection attacks, reference : https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE-wallfilter
different needs of different business scenarios, you can use our reference configuration, but it is recommended that you carefully read the documentation to understand clearly do custom configuration.
Druid provides Log4jFilter/CommonsLogFilter/Slf4jFilter, see here : https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_LogFilter
Druid offers a variety of means to monitor connection leaks, see here : https://github.com/alibaba/druid/wiki/%E8%BF%9E%E6%8E%A5%E6%B3%84%E6%BC%8F%E7%9B%91%E6%B5%8B
Connect to an Oracle database, other connection pool will exist the problem of excessive memory usage, Druid is the only connection pool to solve this problem. see here : http://code.alibabatech.com/wiki/pages/viewpage.action?pageId=6951277
- A variety of connection pool against : http://code.alibabatech.com/wiki/pages/viewpage.action?pageId=6951797
- comparison of various connection pool parameters: http://code.alibabatech.com/wiki/pages/viewpage.action?pageId=6947005
- migration from DBCP : http://code.alibabatech.com/wiki/pages/viewpage.action?pageId=6950500
ExceptionSorter is one of the outstanding features of JBoss DataSource, Druid has the same function of ExceptionSorter. However it does not need to be configured manually. see here : http://code.alibabatech.com/wiki/display/Druid/ExceptionSorter
the maxIdle property for Druid compatible with DBCP, maxIdle is a confusing concept. the connection pool should only maxPoolSize and minPoolSize,druid retain only maxActive and minIdle, respectively the equivalent maxPoolSize and minPoolSize.
DruidDataSource support JNDI, see here : http://code.alibabatech.com/wiki/pages/viewpage.action?pageId=2916633
the concrete implementation of the class is this : com.alibaba.druid.pool.DruidDataSourceFactory, you can read the code to deep understanding.
It is very easy to migrate from DBCP to Druid.
-
- add druid-xxx.jar and druid-wrapper-x.x.x-jar to library
- add druid-xxx.jar and druid-wrapper-x.x.x-jar to library
-
- remove dbcp-xxx.jar and commons-pool.jar form WEB-INF/lib/
- remove dbcp-xxx.jar and commons-pool.jar form WEB-INF/lib/
-
- Optional parameters, such as JVM startup parameters "-Ddruid.filters=stat", dynamic config druid filters
- Optional parameters, such as JVM startup parameters "-Ddruid.filters=stat", dynamic config druid filters
In this usage, making Druid can be used in existing applications such as sonar, sonar is web application written in ruby, write dead DBCP, only through this method to replace.
see here : http://code.alibabatech.com/mvn/snapshots/com/alibaba/druid/
In StatFilter slow SQL execution logging configuration, see here : https://github.com/alibaba/druid/wiki/%E9%85%8D%E7%BD%AE_StatFilter
DBA does not want to directly write the password in the config file, Druid provide the features that encrypted database password. see here : https://github.com/alibaba/druid/wiki/%E4%BD%BF%E7%94%A8ConfigFilter
Druid is an open source project hosted on github.com, you can "pull request". see here : https://github.com/alibaba/druid/wiki/%E5%A6%82%E4%BD%95%E5%8F%82%E4%B8%8E
(Welcome to join QQ Group: 240619787 for discuss and study Druid)
Usage Druid Spring Boot Starter,Documentation:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter