
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
Java 虚拟机的底层设计其实是非常复杂的,本篇主要针对JVM的内存模型以及垃圾回收机制做一个简单概括和介绍,明白它各种方法是如何运行的,数据在哪里存放的,以及垃圾回收都有哪些算法是如何使用的。Java 虚拟机是运行在内存中的,当我们的虚拟机拿到了自己可支配的内存之后,它会对这些内存做分配,大致分为五个区域,分别为 栈(JVM栈),堆,本地方法栈,程序计数器,方法区(在JDK8之后改名加元空间)。

从语法上来讲,所有命令本身并没有错误,所以 redis 是检查不出来的,但是在逻辑上我们不能让字符串类型的数据自增1,所以 incr email 这个命令时执行失败的,但是其他命令都没有问题,是可以正常执行的,这就是 redis 于 MySQL最大的区别,MySQL是同成功同失败,redis 则是能执行成功的就会保存不进行回滚,执行失败的那就是失败了。Redis 事务仅仅保证事务里的操作会被连续独

从语法上来讲,所有命令本身并没有错误,所以 redis 是检查不出来的,但是在逻辑上我们不能让字符串类型的数据自增1,所以 incr email 这个命令时执行失败的,但是其他命令都没有问题,是可以正常执行的,这就是 redis 于 MySQL最大的区别,MySQL是同成功同失败,redis 则是能执行成功的就会保存不进行回滚,执行失败的那就是失败了。Redis 事务仅仅保证事务里的操作会被连续独

到这里,许多小伙伴们会说可以多设置几台服务器,这样就能避免服务器崩溃带来的影响了,但与此同时也带来了另一个问题,多台服务器的 Session 不共享,如果服务器A生成了一个 Session,在将 Session 发送给用户的同时,也需要将这个 Session 发送给其他几台服务器,避免数据不同步导致用户下次访问时访问到其它服务器出现无此 Session 的情况。此时,我们就迫切需要一种技术,将每个

canal 是阿里巴巴旗下的一款开源项目,基于数据库增量日志解析,提供增量数据订阅&消费主要用途是基于 MySQL 数据库增量日志解析,目前主要支持MySQL。说白了是一个新的技术,第三方中间件,需要额外花时间掌握学习。有兴趣的小伙伴可以查阅下面这边文章,写的非常好!【Canal】从原理、配置出发,从0到1完成Canal搭建-CSDN博客canal 的工作原理类似于将自己伪装成 MySQL(主机)

目录一. 核心简要流程二. 详细流程图三. 启动流程详解3.1 初始化阶段3.2 运行阶段四. 面试题合集4.1 Spring Boot启动流程?4.2 Spring Boot 的自动配置是如何实现的?4.3 如何自定义 Spring Boot 的 Banner?4.4 如何监听 Spring Boot 的启动事件?4.5 Spring Boot 内嵌服务器是如何启动的?4.6 @SpringBo

本文详细介绍了Java中三种I/O模型:BIO、NIO和AIO的工作原理及实现方式。 BIO(同步阻塞I/O):采用"一个连接一个线程"模型,编程简单但效率低,适用于低并发场景。文章通过服务端/客户端代码示例展示了BIO的双重阻塞特性及其资源浪费问题。 NIO(同步非阻塞I/O):通过Selector多路复用机制实现单线程管理多个连接,大幅提高并发性能。文章从基础版本逐步推导出

本文详细介绍了Java中三种I/O模型:BIO、NIO和AIO的工作原理及实现方式。 BIO(同步阻塞I/O):采用"一个连接一个线程"模型,编程简单但效率低,适用于低并发场景。文章通过服务端/客户端代码示例展示了BIO的双重阻塞特性及其资源浪费问题。 NIO(同步非阻塞I/O):通过Selector多路复用机制实现单线程管理多个连接,大幅提高并发性能。文章从基础版本逐步推导出

使用过 ArrayList 集合的同学应该大致都知道,ArrayList 是一个非线程安全的集合;同样,Java也为我们提供了线程安全的 List 集合,只是用的频率没有 ArrayList 那么频繁,它就是我们本篇文章要说的 CopyOnWriteArrayList。CopyOnWriteArrayList 的原理不难理解它底层采用了加锁的方式保证线程安全并且加的是 Lock 锁而不是 Sych

除了寻址空间进行了划分,系统权限也进行了划分,因为有一些CPU指令风险等级较高,所以将很多指令划分了不同的等级,(Ring0,Ring1,Ring2,Ring3)其中Ring0权限最高,Ring3权限最低,用户控件只能执行受限的Ring3命令,不能直接调用系统资源,需要通过内核提供的接口进行访问,内核空间则可以执行Ring0,调用一切系统资源;因此,常常需要把用户的操作和内核的操作隔离开,避免用户








