自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 Redis 有这一篇就够了

第一章 引言数据库的键总是一个字符串对象,键的值可以是字符串、列表、哈希、集合、有序集合。第一部分 数据结构与对象第二章 简单动态字符串Redis自己构建了一种名为简单动态字符串(SDS)的抽象类型。包含字符串的键值对在底层是由SDS实现的。2.1 SDS的定义添加图片注释,不超过 140 字(可选)添加图片注释,不超过 140 字(可选)2.2 SDS与C字符串的区别C语言使用N+1的字符数组标识长度N的字符串,字符数组的最后一个元素总是空字

2024-05-13 21:50:25 667

原创 【Mysql底层】基础夯实(一)

数据不是按照索引值顺序存储的,无法用于排序;关联查询需要排序时会分成两种情况,如果order by子句的所有列都来自关联的第一个表,那么mysql在关联处理第一个表进行文件排序 explain会出现using filesort,其余情况会先将关联结果存放到临时表,在所有的关联都结束后在进行文件排序,explain的extra会出现using temporary using filesort。根节点存放了指向子节点的指针,从这些指针向下查找,通过比较节点页的值和要查找的值可以找到合适的指针进入下层节点。

2024-05-13 21:44:05 722

原创 计算机网络(从入门到精通),看这一篇就够了

HTTP协议HTTP协议是无连接的,无状态的。HTTP请求报文和响应报文都由三个部分组成:开始行、首部行、实体主题。状态码都是三位数字的,分为5大类共33种,例如:1xx表示通知信息的,如请求收到了或正在进行处理2xx表示成功,如接受或知道了;3xx表示重定向,如果完成请求,还必须采取进一步的行动;4xx表示客户端错误,如请求中有错误的语法或不能完成;5xx表示服务端错误,如服务器失效无法完成请求。在浏览器地址栏键入URL,按下回车之后发生的几个事件:1)浏览器向DNS服

2024-05-13 21:40:42 697

原创 一文读懂JAVA并发编程(进阶)

轻量级锁的工作过程:在代码即将进入同步块的时候,如果此同步对象没有被锁定(锁标志位为“01”状态),虚拟机首先将在当前线程的栈帧中建立一个名为锁记录(Lock Record)的空间,用于存储锁对象目前的Mark Word的拷贝---》虚拟机将使用CAS操作尝试把对象的Mark Word更新为指向Lock Record的指针---》如果这个更新动作成功了,即代表该线程拥有了这个对象的锁,并且对象Mark Word的锁标志位(Mark Word的 最后两个比特)将转变为“00”,表示此对象处于轻量级锁定状态。

2024-05-13 16:18:40 437

原创 一文读懂JAVA并发编程(基础)

t 线程用 synchronized(obj) 获取了对象锁后 调用 obj.wait(long n) 方法时,t 线程从 RUNNABLE --> TIMED_WAITING t 线程等待时间超过了 n 毫秒,或调用 obj.notify() , obj.notifyAll() , t.interrupt() 时 竞争锁成功,t 线程从 TIMED_WAITING --> RUNNABLE 竞争锁失败,t 线程从 TIMED_WAITING --> BLOCKED。全部是救急线程,生存时间60s。

2024-05-13 16:15:50 811

原创 一篇文档带你了解整个JVM(Java虚拟机)(下)

主动释放才会被GC。当minor GC过于频繁,或经常出现minor gc时 survivor的一个区域满且old gen增长超过了survivor区域大小时,考虑调整新生代大小,原则是在不调大JVM Heap的情况下放大新生代空间,让对象在minor gc阶段被回收;我们知道ParNew收集器使用的是复制算法,这个算法的高效是建立在大部分对象都“朝生夕灭”的特性上的,如果存活对象过多,把这些对象复制到Survivor并维持这些对象引用的正确性就成为一个沉重的负担,因此导致垃圾收集的暂停时间明显变长。

2024-05-13 16:09:15 706

原创 一篇文档带你了解整个JVM(Java虚拟机)(上)

第2章 Java内存区域与内存溢出异常2.2运行时数据区域添加图片注释,不超过 140 字(可选)2.2.1程序计数器程序计数器:当前线程所执行的字节码的行号指示器,节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令。Java虚拟机的多线程是通过线程轮流切换、分配处理器时间方式实现,任何一个时刻一个处理器都只会执行一条线程中的指令,为了切换后能恢复到正确位置,每条线程都需要有一个独立的程序计数器,各条线程互不影响,独立存储,“线程私有“。2.2.2

2024-05-13 16:08:02 885

原创 spring基础夯实(二)

创建A时会首先记录A对应的beanName,并将创建工厂加入缓存中,对A的属性填充yeshidi奥永populate方法的时候对B进行递归创建,因为B也存在A属性,因此再实例化B的populate方法中又会再次初始化B,直接调用ObjectFactory去创建A。在B中创建依赖A时通过ObjectFactory提供的实例化方法来中断A中的属性填充,使B中持有的A是刚刚初始化没有任何属性的A,因为A与B中的A所表示的属性地址是一样的,所以在A创建好的属性填充自然可以通过B中的A获取,这样就解决了循环依赖。

2024-05-13 14:55:55 584

原创 Spring基础夯实(一)

Spring中的Resource Resource接口可以根据资源的不同类型,或者资源所处的不同场合,给出相应的具体实现。DelegatingFilterProxy是一个Filter的Proxy对象,它把具体工作委派给Filter的委派对象,WebApplicationContext中的Filter成为DelegatingFilterProxy的代理对象的默认关系标志就是容器中的Filter的beanname与DelegatingFilterProxy所对应的<filter-name>相同。

2024-05-13 09:50:25 334

zookeeper思维导图

zookeeper思维导图

2024-05-13

空空如也

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

TA关注的人

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