小知识专栏
文章平均质量分 80
一起进步
乘风破BUG
别crud了
展开
-
SpringBean的加载过程
文章目录spring读取配置或注解的过程spring的bean的生命周期实例化Instantiation初始化spring的BeanPostProcessor处理器实例化阶段初始化阶段容器启动运行阶段容器的停止销毁一些关键问题FactoryBean和BeanFactory的区别?Spring如何解决循环依赖问题spring读取配置或注解的过程先通过扫描指定包路径下的Spring注解,比如@Component,@Service,@Lazy,@Sope等Spring识别的注解或者XML配置的属性(通过读取流原创 2021-03-22 15:40:02 · 819 阅读 · 0 评论 -
Mysql的索引实现之B树和B+树
文章目录B树定义B树的插入操作B树的删除操作B+树定义B+树的插入操作B+树的删除操作B树定义B树也称为B-树,它是一棵多路平衡查找树,一般描述一棵B树时需要指定它的阶树,阶数表示一个节点最多可以有多少个孩子节点,一般用字母m表示阶数,当m取2时,就是我们常见的二叉搜索树一般m阶的B树定义如下:每个节点最多有m-1个关键字根节点最少可以只有一个关键字非根节点至少有Math.ceil(m/2)-1个关键字TIP:Math.ceil()表示加上0.5再向下取整每个节点中的关键字都按照从小到大原创 2021-03-19 17:57:15 · 563 阅读 · 0 评论 -
23种设计模式
文章目录单例设计模式工厂设计模式单例设计模式定义:单例设计模式,是一种常用的软件设计模式,在它的核心结构中只包含一个被称为单例的特殊类,通过单例模式可以保证系统中一个类只用一个实例,即一个类只有一个对象实例特点:单例类只能有一个实例单例类必须自己创建自己的唯一实例单例类必须给所有其他对象提供这一实例单例模式的要点:私有的构造函数指向自己实例的私有静态引用以自己实例为返回值的静态的公有方法单例模式根据实例化对象的时机的不同分为两种:一种是饿汉式单例,一种是懒汉式单例饿汉式单原创 2021-03-04 15:01:00 · 974 阅读 · 3 评论 -
使用LinkedHashMap实现一个LRU算法的缓存
/** * @author wdj * Created on 2021/2/25 14:28 */public class LRUcache<K,V> extends LinkedHashMap<K,V> { //默认缓存值 private static final int DEFAULT_NODE_NUM = 11; //缓存限定值 private int capacityLimit; LRUcache(){ thi原创 2021-02-25 14:45:39 · 193 阅读 · 0 评论 -
Hutool中那些常用的工具类和方法
文章目录ConvertDateUtilStrUtilClassPathResourceReflectUtilNumberUtilBeanUtilCollUtilMapUtilAnnotationUtilSecureUtilCaptchaUtilConvert类型转换工具类,用于各种类型数据的转换。//转换为字符串int a = 1;String aStr = Convert.toStr(a);//转换为指定类型数组String[] b = {"1", "2", "3", "4"};Integ原创 2021-02-09 15:39:43 · 1983 阅读 · 0 评论 -
nginx的一些小功能
文章目录反向代理静态代理动态代理文件压缩地址重写按目录划分项目配置HTTPS生成SSL自签名证书配置支持HTTPS如何申请受浏览器信任的证书反向代理反向代理就是当请求访问你的代理服务器时,代理服务器会对你的请求进行转发,可以转发到静态的资源路径上去,也可以转发到动态的服务接口上去。下面我们以对域名进行代理为例,来讲讲如何进行静态代理和动态代理静态代理静态代理就是将请求代理到不同的静态资源路径上去,需要修改nginx的配置文件,如下:server { listen 80;原创 2021-02-09 15:07:58 · 336 阅读 · 0 评论 -
Java8新特性
文章目录Stream APIStream API原创 2021-02-09 14:37:04 · 493 阅读 · 0 评论 -
使用Docker部署redis集群并整合springBoot
文章目录简介redis集群搭建修改配置文件编写docker-compose文件SpringBoot中使用Redis集群修改application.yml配置文件,添加Redis集群配置引入lettuce依赖简介为了提高Redis的存储容量和响应速度,有时候我们需要搭建Redis集群。本文主要讲述Redis集群环境的搭建步骤以及如何在SpringBoot中整合使用Redis集群。redis集群搭建这里使用Docker Compose来搭建,我们将搭建一个6节点的Redis集群,包括3个主节点和3个从节原创 2021-02-08 15:41:07 · 436 阅读 · 0 评论 -
mysql实现读写分离
文章目录简介前提安装Gaea安装Go语言环境安装Gaeanamespace配置文件简介传统的MySql读写分离方案是通过在代码中根据SQL语句的类型动态切换数据源来实现的,那么有没有什么中间件可以自动实现读写分离呢?小米开源的数据库中间件Gaea就可以实现,接下来我们将详细讲解如何使用Gaea来实现MySql的读写分离。Gaea是小米中国区电商研发部研发的基于MySql协议的数据库中间件,目前在小米商城大陆和海外得到广泛使用,包括订单、社区、活动等多个业务。Gaea支持分库分表、SQL路由、读写分离等原创 2021-02-05 11:26:35 · 823 阅读 · 2 评论 -
MySQL主从复制的原理以及实现
文章目录什么是主从复制?主从复制的原理主实例搭建从实例搭建将主从数据库进行连接主从复制测试什么是主从复制?主从复制是指将主数据库的DDL和DML操作通过二进制日志传到从数据库上,然后在从数据库上对这些日志进行重新执行,从而使从数据库和主数据库的数据保持一致。主从复制的原理Mysql主库在事务提交时会把数据变更作为事件记录在二进制日志Binlog中;主库推送二进制日志文件Binlog中的事件到从库的中继日志Relay log中,之后从库根据中继日志重做数据变更操作,通过逻辑复制来达到主库和从库的数原创 2021-02-03 23:39:49 · 450 阅读 · 1 评论 -
实现SpringBoot整合ELK
文章目录准备ELK环境下载安装包elasticsearchLogstash使用docker-compose.yml脚本启动ELK服务启动ELK三个容器后的操作给Elasticsearch安装IK分词器logstash需要安装json_lines插件,并重新启动关闭防火墙访问KibanaSpringBoot集成Logstash引入依赖包在resource下添加配置文件logback-spring.xml让logback的日志输出到logstash启动springboot应用在kibana中查看日志信息准备E原创 2021-01-28 22:18:57 · 1086 阅读 · 0 评论 -
快速实现一个小文件存储
安装MinIO(Docker方式)下载MinIO的Docker镜像docker pull minio/minio容器构建语句docker run -p 9090:9000 --name minio \ --restart=always \ -v /mydata/minio/data:/data \ -v /mydata/minio/config:/root/.minio \ -d minio/minio server /data构建成功运行之后运行成功后,访问htt原创 2021-01-25 17:29:39 · 402 阅读 · 0 评论
分享