Fork me on Gitee

07 2021 档案

摘要:事务管理 数据库事务 事务是什么 是数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作; **这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行;**事务是一组不可再分割的操作集合。 数据库事务是保证在并发情况下能够正确执行的重要支撑,MySQL常见的数据库引擎中支持事务的是 阅读全文
posted @ 2021-07-26 10:46 明叶师兄。 阅读(192) 评论(0) 推荐(0)
摘要:Spring Bean的生命周期 四个阶段 Spring Bean的生命周期只有这四个阶段。把这四个阶段和每个阶段对应的扩展点糅合在一起虽然没有问题,但是这样非常凌乱,难以记忆。要彻底搞清楚Spring的生命周期,首先要把这四个阶段牢牢记住。 **实例化和属性赋值对应构造方法和setter方法的注入 阅读全文
posted @ 2021-07-21 23:14 明叶师兄。 阅读(180) 评论(0) 推荐(0)
摘要:Java中的Object类 Object类简介 Object类是Javajava.lang包下的核心类,Object类是所有类的父类,何一个类时候如果没有明确的继承一个父类的话,那么它就是Object的子类; Object 类属于java.lang包,此包下的所有类在使用时无需手动导入,系统会在程序 阅读全文
posted @ 2021-07-19 19:58 明叶师兄。 阅读(563) 评论(0) 推荐(0)
摘要:Java线程池七个参数 首先创建一个定长的线程池 //创建使用固定线程数的线程池 ExecutorService es2 = Executors.newFixedThreadPool(3); for (int i = 0; i < 10; i++) { es2.submit(new Runnable 阅读全文
posted @ 2021-07-19 19:17 明叶师兄。 阅读(490) 评论(0) 推荐(0)
摘要:常见算法的时间复杂度 冒泡排序 for(int i = 0 ;i<arr.length-1;i++){ //第i趟比较 for(int j = 0 ;j<arr.length-i-1;j++){ //开始进行比较,如果arr[j]比arr[j+1]的值大,那就交换位置 if(arr[j]>arr[j 阅读全文
posted @ 2021-07-15 00:11 明叶师兄。 阅读(467) 评论(0) 推荐(0)
摘要:RocketMQ消息堆积问题 RocketMQ消息堆积主要分为三个层次的问题: 其一是Producer生产速率过快,什么场景呢,比如Producer故障,比如DOS攻击,比如业务高峰(超过企业预估的,例如12306订票,双十一下单,这些一开始的时候都有超过预期的情况)。 其二是Broker消息堆积, 阅读全文
posted @ 2021-07-09 12:11 明叶师兄。 阅读(2399) 评论(0) 推荐(0)
摘要:HashMap的时间复杂度 HashMap在jdk1.8之后引入了红黑树的概念,表示若桶中链表元素超过8时,会自动转化成红黑树; 若桶中元素小于等于6时,树结构还原成链表形式。 原因: 红黑树的平均查找长度是log(n),长度为8,查找长度为log(8)=3,链表的平均查找长度为n/2,当长度为8时 阅读全文
posted @ 2021-07-09 12:08 明叶师兄。 阅读(4736) 评论(1) 推荐(1)
摘要:说一下Mysql索引 什么是索引 帮助数据库高效获取数据的数据结构 索引的作用 当表中数据量越来越大时,索引可以明显提高查询效率,当然索引并不是越多越好 索引的命中 MySql中索引默认结构为B+树,为什么不是B树、Hash,二叉树,红黑树? B树:因为其不管是叶子节点还是非叶子节点都会保存数据,这 阅读全文
posted @ 2021-07-08 00:12 明叶师兄。 阅读(74) 评论(0) 推荐(0)
摘要:B树、B-树、B+树、B*树之间的关系 根节点、子节点,以及叶子节点的区别 所谓的树形结构就是各个元素之间具有分层关系的数据结构,常用一棵倒置的树来表示逻辑关系。 所谓的根节点就是树的最顶端的节点, 继续往下分为子节点, 当不断细分直到不再有子节点时为叶子节点。 聚簇索引与非聚簇索引 Mysql的i 阅读全文
posted @ 2021-07-07 23:26 明叶师兄。 阅读(467) 评论(0) 推荐(0)
摘要:Mybatis Plus 的优点 Mybatis-Plus是一个Mybatis的增强工具,只是在Mybatis的基础上做了增强却不做改变,MyBatis-Plus支持所有Mybatis原生的特性,所以引入Mybatis-Plus不会对现有的Mybatis构架产生任何影响。 MyBatis-Plus 阅读全文
posted @ 2021-07-07 21:50 明叶师兄。 阅读(8045) 评论(0) 推荐(1)
摘要:JVM垃圾回收机制 JVM的组成 程序计数器 执行class文件到达哪一行了,线程私有的,不会发生内存泄漏。 堆 内存管理最大的一部分,当程序里new出一个对象,或者声明一个数组时,都会在堆内存中申请出一块空间。 分为新生代、年老代、永久代。 发生异常时是因为往里面添加的对象太多。 虚拟机栈 每个方 阅读全文
posted @ 2021-07-06 19:46 明叶师兄。 阅读(248) 评论(0) 推荐(0)
摘要:Java中的集合 集合分为:List,Set,Map三种,其中List与Set是继承自Collection,而Map不是。 一、List与Set的区别: List中的元素有存放顺序,并且可以存放重复元素,检索效率高,插入删除效率低; Set没有存放顺序,而且不可以存放重复元素,后来的元素会把前面重复 阅读全文
posted @ 2021-07-04 22:34 明叶师兄。 阅读(1854) 评论(0) 推荐(0)
摘要:MQ 面试题 为什么要使用MQ (1)**解耦:**A 系统发送数据到 BCD 三个系统,通过接口调用发送。如果 E 系统也要这个数据呢?那如果 C 系统现在不需要了呢?A 系统负责人几乎崩溃......A 系统跟其它各种乱七八糟的系统严重耦合,A 系统产生一条比较关键的数据,很多系统都需要 A 系 阅读全文
posted @ 2021-07-04 00:18 明叶师兄。 阅读(1840) 评论(0) 推荐(0)
摘要:Redis 双写一致性 首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用。在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作。 但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存。又或者是先删除缓存,再更新数据库,其实大家存在很大的争议。 从理论上来说,给缓存设 阅读全文
posted @ 2021-07-03 19:45 明叶师兄。 阅读(579) 评论(0) 推荐(0)
摘要:Redis 主从复制 单机的 redis,能够承载的 QPS 大概就在上万到几万不等。对于缓存来说,一般都是用来支撑读高并发的。因此架构做成主从(master-slave)架构,一主多从,主负责写,并且将数据复制到其它的 slave 节点,从节点负责读。所有的读请求全部走从节点。这样也可以很轻松实现 阅读全文
posted @ 2021-07-01 23:58 明叶师兄。 阅读(109) 评论(0) 推荐(0)