Druid 介绍
实时的数据消费,真正做到数据摄入实时、查询结果实时。
高效的多租户能力,最高可以做到几千用户同时在线查询。
扩展性强,支持 PB 级数据、千亿级事件快速处理,支持每秒数千查询并发。
极高的高可用保障,支持滚动升级。
Druid监控系统作用
下面是Druid 的监控系统首页截图, 只需要简单配置就可以使用

开始配置
首先创建一个SpringBoot的项目
需用引入以下几个工具
如图

在 pom.xml 文件中引入druid连接池的依赖
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.10</version> </dependency>
resources下新创建一个在 application.yml 文件, 指定使用druid的连接池
spring: datasource: # Springboot默认会使用自带的 HikariDataSource password: root username: root url: jdbc:mysql://localhost:3306/test?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai driver-class-name: com.mysql.cj.jdbc.Driver type: com.alibaba.druid.pool.DruidDataSource # 指定使用 druid 的连接池
创建一个DruidConfig.java配置类
package com.springboot.druid.config;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.support.http.StatViewServlet;
import com.alibaba.druid.support.http.WebStatFilter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
/**
* 对 Druid 的监控配置对象注入到容器中
* Created by YongXin Xue on 2020/06/04 15:18
*/
@Configuration
public class DruidConfig {
/**
*
* @return
*/
@Bean // 当前类如果是组件类,对象创建时容器也会调用此方法将方法的返回值注入到容器中
@ConfigurationProperties(prefix = "spring.datasource") // 加载配置文件中的配置设置给返回的对象
public DruidDataSource getDataSoures(){
return new DruidDataSource();
}
/**
* 配置一个管理后台的Servlet [ 配置Druid的监控系统 ]
* 访问时默认会生成一个页面
* @return
*/
@Bean
public ServletRegistrationBean statViewServlet() {
// 当前 Druid 的后台监控系统的访问地址 /druid/*
ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
Map<String, String> initParams = new HashMap<>();
initParams.put("loginUsername", "admin");
initParams.put("loginPassword", "admin");
// 默认就是允许所有访问
initParams.put("allow", "");
initParams.put("deny", "192.168.15.21");//ip黑名单
bean.setInitParameters(initParams);
return bean;
}
/**
* 配置一个web监控的filter:访问静态资源一定没有sql操作
* @return
*/
@Bean
public FilterRegistrationBean webStatFilter() {
FilterRegistrationBean bean = new FilterRegistrationBean();
bean.setFilter(new WebStatFilter());
Map<String, String> initParams = new HashMap<>();
//排除过滤
initParams.put("exclusions", "*.jpg,*.avi,*.js,*.css,/druid/*");
bean.setInitParameters(initParams);
bean.setUrlPatterns(Arrays.asList("/*"));
return bean;
}
}
配置完成后, 运行主程序在浏览器输入本机的地址加自己配置的tomcat端口加/druid/既可以打开druid的后台监控系统了
如图

赶紧来写两行代码测测性能吧 !!