Druid

DRUID数据库连接池配置详解

你离开我真会死。 提交于 2019-12-04 02:28:42
1、配置参数 和其它连接池一样DRUID的DataSource类为:com.alibaba.druid.pool.DruidDataSource,基本配置参数如下: 配置 缺省值 说明 name 配置这个属性的意义在于,如果存在多个数据源,监控的时候可以通过名字来区分开来。 如果没有配置,将会生成一个名字,格式是:"DataSource-" + System.identityHashCode(this) jdbcUrl 连接数据库的url,不同数据库不一样。例如: mysql : jdbc:mysql://10.20.153.104:3306/druid2 oracle : jdbc:oracle:thin:@10.20.149.85:1521:ocnauto username 连接数据库的用户名 password 连接数据库的密码。如果你不希望密码直接写在配置文件中,可以使用ConfigFilter。详细看这里:https://github.com/alibaba/druid/wiki/%E4%BD%BF%E7%94%A8ConfigFilter driverClassName 根据url自动识别 这一项可配可不配,如果不配置druid会根据url自动识别dbType,然后选择相应的driverClassName(建议配置下) initialSize 0

Spring Boot动态创建Bean,DynamicDataSource实现读写分离的多数据源

落花浮王杯 提交于 2019-12-04 02:28:28
一. 从Spring 3.0开始,增加了一种新的途径来配置Bean Definition,这就是通过Java Code配置Bean Definition。 与XML和Annotation两种配置方式不同点在于: 前两种方式XML和Annotation的配置方式为预定义方式,即开发人员通过XML文件或者Annotation预定义配置Bean的各种属性后,启动Spring容器,Spring容器会首先解析这些配置属性,生成对应的Bean Definition,装入到DefaultListtableBeanFactory对象的属性容器中,以此同时,Spring框架也会定义内部使用的Bean定义,如Bean名为:org.springframework.context.annotation.internalConfigurationAnnotationProcessor”的 ConfigurationClassPostProcessor 定义。而后此刻不会做任何Bean Definition的解析动作,Spring框架会根据前两种配置,过滤出BeanDefinitionRegistryPostProcessor 类型的Bean定义,并通过Spring框架生成对应的Bean对象(如 ConfigurationClassPostProcessor 实例)。。结合 Spring

springboot整合mybatis

会有一股神秘感。 提交于 2019-12-04 01:53:37
springboot配置数据库连接池druid 新建springboot 项目 druid 学习地址 https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter 相关pom 依赖 druid所需pom依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</version> </dependency> <!--aspect注解--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> </dependency> application.yml配置druid springboot默认数据源是org.apache.tomcat.jdbc.pool.DataSource spring: datasource: #1.JDBC type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver url:

Spring Boot 整合 Druid

独自空忆成欢 提交于 2019-12-04 01:07:04
Spring Boot 整合 Druid 概述 Druid 是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池、插件框架和 SQL 解析器组成。该项目主要是为了扩展 JDBC 的一些限制,可以让程序员实现一些特殊的需求,比如向密钥服务请求凭证、统计 SQL 信息、SQL 性能收集、SQL 注入检查、SQL 翻译等,程序员可以通过定制来实现自己需要的功能。 Druid 是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括 DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。Druid 已经在阿里巴巴部署了超过 600 个应用,经过多年生产环境大规模部署的严苛考验。Druid 是阿里巴巴开发的号称为监控而生的数据库连接池! 引入依赖 在 pom.xml 文件中引入 druid-spring-boot-starter 依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.20</version> </dependency> 引入数据库连接依赖 <dependency> <groupId>mysql</groupId> <artifactId>mysql

springboot配置数据库连接池druid、整合mybatis、整合pagehelper

心不动则不痛 提交于 2019-12-04 00:16:11
springboot 配置数据库连接池 druid druid所需pom依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> </dependency> application.yml配置druid springboot默认数据源是org.apache.tomcat.jdbc.pool.DataSource spring: datasource: #1.JDBC type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/mybatis_ssm?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true

测试druid数据库连接池并发遇到的问题

孤街浪徒 提交于 2019-12-03 22:56:33
测试条件配置: 1:配置druid连接池最大数量为500(maxActive=500)。 2:测试并发量为1000。 报错:Data source rejected establishment of connection, message from server: "Too many connections"(数据源拒绝建立连接,服务器消息:“连接太多”) 解决办法: 找到MySQL的my.ini配置文件,加上max_connections=1024; max_connect_errors = 1500(设置并发连接最大数和最大的进程连接数,大于连接池最大数即可)。 来源: oschina 链接: https://my.oschina.net/u/3734228/blog/2414003

spring+mybatis+druid集成log4j2

谁都会走 提交于 2019-12-03 21:09:10
log4j2是log4j的替代产品,log4j2支持异步读写,在日志的读写性能上有很大的提高。相应的也就提高了系统的吞吐量。log4j没有更新了,已经被抛弃,所以在新的项目中完全可以抛弃log4j,然后采用log4j2或者logback作为日志实现方案。 本文主要是记录log4j2与目前常采用的Spring+Spring MVC+Mybatis+druid架构的web项目环境的集成。关于log4j2的新特性和功能,请参考官网或者参阅他人博客。 第一步:引入log4j2相关依赖 <log4j2.version>2.8.1</log4j2.version> <!--加入log4j依赖--> <!--use log4j2--> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j2.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-jcl</artifactId> <version>${log4j2.version}</version> </dependency

Druid连接池 属性说明

旧时模样 提交于 2019-12-03 16:40:14
1.1 maxActive 连接池支持的最大连接数。一般取值20就可以了,一般把maxActive设置成可能的并发量就行了设 0 为没有限制。 1.2 maxIdle 连接池中最多可空闲maxIdle个连接 ,这里取值为20,表示即使没有数据库连接时依然可以保持20空闲的连接,而不被清除,随时处于待命状态。设 0 为没有限制。已经不再使用,配置了也没效果 1.3 minIdle 连接池中最小空闲连接数,当连接数少于此值时,连接池会创建连接来补充到该值的数量 1.4 initialSize 初始化连接数目 1.5 maxWait 连接池中连接用完时,新的请求等待时间,毫秒,这里取值-1,表示无限等待,直到超时为止,也可取值9000,表示9秒后超时。超过时间会出错误信息 1.6 removeAbandoned 是否清除已经超过“removeAbandonedTimout”设置的无效连接。如果值为“true”则超过“removeAbandonedTimout”设置的无效连接将会被清除。设置此属性可以从那些没有合适关闭连接的程序中恢复数据库的连接。 1.7 removeAbandonedTimeout 活动连接的最大空闲时间,单位为秒 超过此时间的连接会被释放到连接池中,针对未被close的活动连接 1.8 minEvictableIdleTimeMillis 连接池中连接可空闲的时间

Add a druid cluster as a SQL database in Apache Superset

走远了吗. 提交于 2019-12-03 16:39:20
I currently connect to the druid cluster through the druid connector in Apache Superset. I heard that SQL can be used to query druid. Is it possible to point my SQL database connection to druid? Follow the steps below You need to use latest version of pydruid for enabling sqlalchemy support. For me pydruid 0.4.1 is working fine. On Superset, in the Databases section you need to provide the SQLAlchemy URI druid://XX.XX:8082/druid/v2/sql/ using a broker ip/host. Third thing you need to do is to enable druid.sql.enable=true on broker. I hope this will help you. 来源: https://stackoverflow.com