自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 问答 (1)
  • 收藏
  • 关注

原创 java缓存

提示读写性能,引入缓存场景是读多写少(偏向读),redis的单价并发差不多10w,mysql单机并发1500(读),写(600-800)redis基于内存操作,读取效率快redis支持多种数据支持:集合,有序集合,字符串,哈希,列表等redis功能强大,主从复制,集群,数据持久化,事务等实现功能:MQ,分布式锁,分布式ID,redis基于c,效率高,离底层较近,单线程优势,可维护性高(引入多线程后,执行顺序不确定,并发读写一系列问题,增加系统复杂度,线程切换,加锁和解锁->死锁,性能损耗)Pipeline(

2024-07-27 08:39:30 419

原创 框架部分总结

面向切面编程,用于将那些与业务无关,但却对多个对象产生影响的公共行为和逻辑,抽取公共模块复用,减低耦合记录操作日志(使用aop的环绕通知和切面表达式)获取参数保存下来,缓存,spring实现的事务spring的事务是如何实现的:编程式事务:对代码侵入性太大声明式事务:本质是通过aop功能,对方法前后进行拦截,在执行方法前开启事务,在执行完目标方法之后根据执行情况进行提交或者回滚事务。

2024-07-14 09:16:11 1663

原创 redis基础知识

由于redis master节点和redis salve节点和sentinel处于不同的网络分区,使得sentinel没有能够心跳感知到master,所以通过选举的方式提升了一个salve为master,这样就存在了两个master,就像大脑分裂了一样,这样会导致客户端还在old master那里写入数据,新节点无法同步数据,当网络恢复后,sentinel会 将old master降为salve,这时再从新master同步数据,这会导致old master中的大量数据丢失。

2024-07-05 12:08:11 1632

原创 jvm大致内容后续进行细致补充,有错欢迎指出

复制算法:复制算法是把内存分为同等大小的两块空间,每次就使用其中的一块,在进行垃圾回收时,会把所有存活的对象,复制到另一块空间上面,然后将该空间进行清空,如果内存中的垃圾对象较多,需要复制的对象就较少,这种情况下适合使用该方式并且效率比较高,反之,则不适合。jdk1.7与jdk1.8的区别:在jdk1.8后,方法区(元空间,永久代)移出堆将数据存储在本地内存里面,因为随着动态类的加载,方法区内存会变得不可控,容易导致堆内存不足,方法区主要存在变量,静态变量,类信息,编译后的代码。

2024-06-25 12:19:42 549

原创 最近总结出一点线程八股文,有错误欢迎指出

Synchronized【对象锁】采用互斥的方式让同一时刻至多只有一个线程能持有【对象锁】它的底层由monitor实现的,monitor是jvm级别的对象( C++实现),线程获得锁需要使用对象(锁)关联monitor在monitor内部有三个属性,分别是owner、entrylist、waitset其中owner是关联的获得锁的线程,并且只能关联一个线程;entrylist关联的是处于阻塞状态的线程;waitset关联的是处于Waiting状态的线程。

2024-06-23 10:36:36 1133 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除