240 发简信
IP属地:北京
  • JVM锁优化机制

    synchronized关键字 在java里,使用的最基本互斥同步手段就是synchronized关键字。synchronized关键字经过Javac编译后,会在同步代码块的...

  • 120
    Redis使用的IO模型

    IO顾名思义就是进行输入与输出,对于Redis来说可描述为Redis服务进程想要从内核中的读取Redis客户端发送的请求,然后进行数据的内核空间到用户空间的拷贝的过程,反之客...

  • 120
    Mybatis执行流程

    一、工作流程: 1.读取 MyBatis 配置文件:mybatis-config.xml 为 MyBatis 的全局配置文件,配置了 MyBatis 的运行环境等信息,例如数...

  • Redis的几种数据结构

    Redis的几种数据结构: 1.SDS(动态字符串) SDS存储String类型的数据,底层是一个char[],同时会维护字符串的长度,和申请的内存大小,动态扩容如下机制: ...

  • TCP的拥塞控制

    在TCP协议中,通过慢开始、拥塞避免、快重传、快恢复4个机制来实现TCP的拥塞控制。对于以上机制,数据的发送方需要维护慢开始门限值、拥塞窗口的大小、接收方窗口大小。 慢开始 ...

  • 120
    SpringMVC执行流程

    SpringMVC是spring容器中的子容器,只负责Controller层相关对象的管理。 核心组件: 1.前端控制器:DispatcherServlet -> 实现请...

  • 页面置换算法

    在程序的执行过程中,当所访问的信息不在内存时,会由操作系统负责将所需信息从外存调入内存,然后再继续执行程序,如果在调入内存时,发现内存空间不够,会由操作系统负责将内存中暂时用...

  • 操作系统线程简介

    1.线程的属性 线程是处理机调度的单位; 多CPU计算机中,各个线程可以占用不同的CPU; 每个线程都有一个线程ID、线程控制块; 线程有就绪、阻塞、运行三种基本状态; 线程...

  • InnoDB内部架构

    内存模型: 1.缓冲池 InnoDB存储引擎是基于磁盘储存的,并将其中的记录按照页的方式进行管理。由于CPU速度与磁盘速度之间的鸿沟,InnoDB采用了缓冲池技术来提高数据库...

  • InnoDB的几大关键特性

    InnoDB是储存引擎支持事务,其设计目标主要面向在线事务处理的应用,其特点是行锁设计、支持外键、支持非锁定读,是Mysql_5.5.8版本以后的默认储存引擎。 InnoDB...

  • LSM Tree 数据库底层索引

    数据库中非常常用的索引数据结构——B+ 树,在过去很多年里它都是数据库索引的首选实现方式,但是这种数据结构也并不是很完美。因为,每次修改数据都很有可能破坏 B+ 树的约束,我...

  • spring为什么要用三级缓存

    结论:三级缓存的作用是为了解决spring中Bean依赖注入时发生的循环依赖。如果不需要AOP,那么只需要二级缓存即可实现,如果有AOP,其实二级缓存也能够实现,但是会打破B...

  • 120
    MySQL事务-MVCC原理

    MVCC为多版本并发控制,在Mysql中InnoDB使用了MVCC来实现数据库事务的可重读隔离级别。主要功能是在多线程并发去修改数据库某一张表时,会对事务之间进行隔离,让一次...

  • 类加载过程

    加载 通过类的全限定名称使用类加载器将一个类的二进制流文件加载至方法区中,生成一个Class对象。 验证 验证字节流是否符合Class文件格式、验证字节码描述出的语义是否符合...

  • JVM垃圾回收原理

    在JVM虚拟机中的堆内存放着Java程序中所有的对象实例,随着时间的进行,会有源源不断的对象实例被存放至JVM堆内存中,但是我们知道计算机的内存是有限的,不可能任由JVM...

  • SpringApplication初始化过程

    SpringAppliction.run(xxx.class, args); 准备过程: 1.首先会判断当前环境类型,一般是servlet环境(通过在ClassPath下是否...

  • 120
    LRU - LinkedHashMap

    LinkedHashMap 是由一个HashMap 和LinkedList 双向链表组成的。 LRU:最近最少使用算法可以使用LinkedHashMap来实现: HashMa...

  • 跳表:Redis底层存储数据结构

    跳表是在 O(log(n)) 时间内完成增加、删除、搜索操作的数据结构。跳表相比于树堆与红黑树,其功能与性能相当,并且跳表的代码长度相较下更短,其设计思想与链表相似。 跳表是...