![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
147848
这个作者很懒,什么都没留下…
展开
-
mysql隔离级别
可重复读,a线程事物正在读取数据,b线程的事物将数据修改,但我a线程读取的还是自己事物内的旧数据,不会造成两次读取不同的情况。串行化读已提交读未提交原创 2021-03-29 00:12:02 · 64 阅读 · 0 评论 -
2021-03-29
读提交,两个线程,一个事物读取到另一个数据提交的数据读未提交,有两个线程,a线程事物正在执行事物,b线程读取到a线程未提交数据可重复读 一个线程读取到另一个串行化原创 2021-03-29 00:06:11 · 81 阅读 · 0 评论 -
锁
volatile 可见性,有序性,但满足不了原子性以jmm内存模型说,多个线程将主内存中中的可以共享的普通变量都复制线程的本地内地内存中,每个线程在本地内存中的变量修改都是互不可见的a线程对变量的操作,b线程是不知道的,但加了vaotile关键字,jvm编译后会有一个lock指令去锁住cpu的缓存,一旦缓存中的数据发生变化,他就会通过mesi协议将数据强制刷新到主内存,通过总线嗅探机制让其他线程知道自己保存的旧数据已经无效的,重新去复制主内存的数据指令重排就是cpu在执行指令的时候或者jvm在原创 2021-03-27 19:26:43 · 77 阅读 · 0 评论 -
jvm
堆 分为老年代和新生代(又分为幸存from和to区),存放创建的对象,年轻代对象没经过一次full gc都会年龄加1, 获得比较久的(默认16)的对象会存到老年代栈 存放栈帧,每个线程执行方法都会对应一个栈帧模型,里面主要保存局部变量表,操作数栈,动态链接,方法出口程序计数器 每个线程执行jvm指令的一个字节码计数器方法区 他是线程共享的 存放 类的一些类的类型信息,常量和静态资源本地方法栈……双亲委派机制指的是一个类在被类加载器加载时会先一直调用父类上层的加载器看有没有加载过这个类垃原创 2021-03-27 18:27:21 · 132 阅读 · 0 评论 -
联合索引最左前缀
最左前缀匹配原则之所以会有最左前缀匹配原则和联合索引的索引构建方式及存储结构是有关系的。首先我们创建的index_bcd(b,c,d)索引,相当于创建了(b)、(b、c)(b、c、d)三个索引,看完下面你就知道为什么相当于创建了三个索引。我们看,联合索引是首先使用多列索引的第一列构建的索引树,用上面idx_t1_bcd(b,c,d)的例子就是优先使用b列构建,当b列值相等时再以c列排序,若c列的值也相等则以d列排序。我们可以取出索引树的叶子节点看一下。索引的第一列也就是b列可以说是从左到右单调递增的原创 2021-03-04 00:14:01 · 99 阅读 · 1 评论 -
2020-10-26
springboot常用注解,getmapping,postMapping,restController,ComponentScanEnableAutoConfigurationSpringBootApplicationString替换字符串replace()格式化字符串format()拆分字符串split()求字符串的长度length()indexOf获取某个字符在字符串中的位置的值trim()去除空白chatAT()取出一个字符串在某个位置中的植substring()取出一个子原创 2020-10-26 18:29:26 · 77 阅读 · 0 评论 -
2020-10-23
对象不用了,会被回收码,在方法区中方法会不会回收会创建对象放在ssttic list中,对象不能被回收,因为创建的对象被list引用原创 2020-10-23 16:28:13 · 56 阅读 · 0 评论 -
MQ
单体模式:消息生产者和消息消费者。负载均衡消息会轮循发送消息给所有消费者如果需要合理分发,那就手动ACK消息持久化:在服务器端 持久保存消息,避免因服务器宕机造成消息丢失1.队列持久化:将服务器的队列设置成持久队列2.消息持久化:将发送的消息设置成持久消息发布和订阅模式,消息群发:可以把消息发给所有的消费者,就是同一条消息,所有的消费者都可以收到靠fanout类型交换机来实现,生产者发送数据发送给交换机,交换机得到消息数据后群发给所有消费者,需要消费者来配合,要绑定,每个消费者都有自原创 2020-09-11 14:47:31 · 189 阅读 · 0 评论 -
Dubbo
dubbo负载均衡策略有几种,4种1.随机模式。按权重设置随机概率。在一个截面上碰撞的概率较高,但调用越大分布越均匀2.轮询模式。按公约后的权重设置轮询比例。但存在响应慢的服务提供者会累积请求3.最少活跃调用数。响应快的提供者接受越多请求,响应慢的接受越少请求4.一致hash。根据服务提供者ip设置hash环,携带相同的参数总是发送的同一个服务提供者,若服务挂了,则会基于虚拟节点平摊到其他提供者上...原创 2020-09-05 22:48:30 · 76 阅读 · 0 评论 -
REdis
Redis缓存穿透(查不到数据导致的):比如用户去redis中查询一个key为-1的数据,而redis缓存和mysql中都没有查询到这个数据,如果服务器大量的接收到了这种请求,就可能会造成服务器宕机:解决方案:布隆过滤器,缓存击穿(查询量太大,redis缓存又过期):有大量的用户请求去获取redis缓存中一个刚好过期的数据,由于缓存过期,就会去访问数据库查询数据,这时就会使数据库瞬间压力过大造成缓存击穿。解决方案:分布式锁,保证对于每个key同一时间只有一个线程去查询数据库...原创 2020-08-16 11:36:24 · 104 阅读 · 0 评论