文日小栈
线程安全的数据结构有哪些
Initializing search
文日小栈
欢迎
Temp
25年目标
25年目标
3月
4月
PA实验笔记
PA实验笔记
PA1
PA1
Linux上程序的生命周期
Nemu
断点对NEMU执行效率影响
状态机
程序的结束过程
词法分析与递归表达式求值
问题
PA2
PA2
AM裸机运行时环境
DiffTest
抽象层
指令周期
1. 设备及其基本工作方式
1. 运行时环境的作用
1. mips32和riscv32加载32位常数的策略
静态指令与动态指令
PA3
PA3
CTE
ELF 文件
异常
操作系统的起源
文件系统实现
问题
Java
Java
IO
IO
AIO
BIO
IO分类
IO常见类的使用
NIO
Unix IO 模型
多路复用 IO
JVM
JVM
JVM 内存模型
JVM内存结构
Java 内存模型与并发编程
字节码的增强技术
类字节码
类的生命周期
基础
基础
Java集合框架(JCF)
SPI机制
反射
异常
泛型
注解
并发
并发
JUC 框架
Java多线程与并发
Synchronized
ThreadLocal
Volatile
线程
线程池
锁
操作系统
操作系统
Mosaic 操作系统模型
固件(Firmware)
应用程序 = 计算 + 操作系统 API
形式化软件验证
把状态机的一部分直接放到操作系统
状态机的管理者
编译器原理
数据库
数据库
MySQL 慢查询优化与索引
简历
简历
备忘录
算法
算法
图
图
无向图
最小生成树
最短路径
有向图
字符串
字符串
单词查找树
子字符串查找
字符串排序
数据压缩
正则表达式
排序
排序
优先队列
希尔排序
平衡查找树
应用场景与性能分析
归并排序
快速排序
插入排序
选择排序
查找
查找
二叉查找树
应用
散列表
符号表
计算机网络
计算机网络
CS144
CS144
重组器(Reassembler)
面经
面经
Java
Java
JUC
JUC
CurrentHashMap的原理是什么
Cas和aqs是什么,cas如果失败会发生什么,cas和aqs基于什么场景去使用
Reenterlock与sync关键字的区别
synchronized 和 Reentranlock 详细介绍,哪些情况优先使用后者,或者说为什么解决什么问题而存在
Synchronized 底层原理是什么,可重入锁原理是什么
threadLocal是什么?原理是什么?问题?
创建线程的方式有几种?区别是什么?
如何创建线程
线程安全的数据结构有哪些
说说线程的生命周期和状态?
JVM
JVM
JVM的内存区域有什么
JVM的内存模型
JVM的垃圾回收机制
双亲委派机制是什么
垃圾回收器介绍
垃圾回收算法介绍
对象创建的过程是什么
父类加载器和子类加载器有什么区别
类载入过程 JVM 会做什么
结合JVM的内存结构讲解多线程为什么可能发生错误
Spring
Spring
Bean的生命周期是如何管理的?请详细描述从Bean创建到销毁的完整过程,包括各个扩展点。
Spring 的三级缓存机制是什么
Spring的事务什么情况下会失效?
Bean的生命周期是什么
Spring中事务是如何传播的,事务出错时如何实现回滚
Spring启动阶段发生什么
不同依赖注入方式有哪些及其区别
讲解springAOP
谈谈对于 Spring IoC 的了解
基础
基础
==和 equals 的区别?
ArrayList和LinkedList的区别
HashMap的基本原理是什么?
IOC, DI, AOP介绍
JAVA的包装类?为什么要把基本数据类型包装成类?
JDK 1.7和1.8中HashMap的区别?
Java常用的集合有哪些
SPI 机制是什么
StringBuffer和StringBuilder是什么,区别是什么
Aop实现方式
Final关键字是什么
int和Integer的区别
为什么 String 不可变,StringBuilder是什么
为什么要有反射
什么是反射?应用?
什么是泛型?有什么作用?
什么是自动拆箱装箱?
如何理解 Java 的跨平台性
封装继承多态是什么,有什么联系
接口、普通类和抽象类有什么区别和共同点
本地缓存 Caffeine 的优点与缺点
深拷贝和浅拷贝区别
线程池的七大参数?
锁是如何实现数据同步的?
Redis
Redis
RDB和AOF的区别是什么
Redis 使用的过期删除策略是什么?
Redis 如何实现数据不丢失?
Redis实现分布式锁,请详细说明这个分布式锁的实现原理
Redis常见的数据结构
Redis的底层实现
Zset的底层结构是什么?为什么Zset要使用两种结构来实现?
Redis的k,v结构是怎么设计的?
Redis的哪些原理和特性,导致它是个高性能缓存工具
Redis的数据一致性相对于本地缓存比较好,是怎么保证?
如何保证Redis与MySQL的数据一致性
怎么保证redis的数据不会丢失?
怎么判断 Redis 某个节点是否正常工作?
缓存穿透、缓存击穿、缓存雪崩
Sql场景题
Sql场景题
详细设计毕业生表
中间件
中间件
ES 原理是什么,搜索功能是如何实现的
ES有哪些节点?ES的主节点有多少个?
ES的写入流程是什么样的?
ES的分页是什么?如何实现深度翻页?
RabbitMQ 如何保证消息不丢失
RabbitMQ 如何保证消息有序?
RabbitMQ具有什么特点
RabbitMQ延迟队列底层怎么实现的,延迟队列还是队列模型吗?怎么对消息进行排序的?每一条消息过来都要重新排序吗?
Kafka怎么保证消息有序性
为什么要使用ES,MySQL不能解决问题吗?
为什么要保证消息只消费一次,重复消费会怎么样
分布式
分布式
主从集群有延迟,主节点刚存数据未同步就挂了,从节点无数据如何处理
双写策略是什么
如何设计分布式锁,比如key,value的设计,怎么避免死锁?
雪花算法是什么
功能设计
功能设计
JWT单点登录是什么
Im系统的发消息流程,高并发体现在哪里,redis存的什么、起到什么作用,怎么群发的
什么样的场景使用消息队列比较合适?哪些任务需要用消息队列去异步处理,你是怎么划分的?
如何设计一个任务队列,支持优先级区分、取消任务
如果活动很火爆,有100万QPS的访问量,只持续一分钟,或者5分钟的话,只有一个节点的话根本扛不住,怎么处理?
怎么使用RabbitMQ延迟队列实现订单超时自动取消?
排行榜功能怎么实现
限流底层原理是什么
并发
并发
Jemeter压测比较关注什么数据?
乐观锁是什么,给出实现思路
什么是乐观锁?
什么是线程上下文切换?
什么是线程死锁?
如何预防和避免线程死锁?
并发和并行的区别
数据结构线程安全是如何实现的
流量控制是怎么实现的
线程池四大拒绝策略?
自旋锁是什么
设计一个短链系统, 每日写入量百万,访问量千万 ,要求通过短链找到长链 10ms内,同时不能重复插入长链
进程通信的方式有哪些
微服务
微服务
Nacos是什么,原理是什么
操作系统
操作系统
内存的分页分段介绍
如何理解一切皆文件
时间片轮转算法是什么
用户态和内核态是如何切换的?
线程比进程高效的原因
进程线程和协程的区别是什么
数据库
数据库
B+树、B树和红黑树的特点及区别?在数据库中是如何运用的?
B+树的数据结构是什么,如何进行查找,为什么不在非叶子节点存入数据
ES查询为什么比MySQL要快?
InnoDB的索引结构
MySQL索引为什么使用b+树?
Explain是什么,通常需要关注那些输出信息
Mvcc实现原理
Mysql慢sql怎么优化
Mysql有哪些索引,有什么索引类型
Sql查询的执行过程是什么
两个事物修改同一条记录,这个时候再去读这个记录会怎么样 ?读到的结果是一样的还是不一样的?
事务的隔离性是什么,Spring的事务是怎么实现隔离性
事务的隔离级别介绍
事务隔离性实现的底层原理
如何解决死锁和锁失效等问题
怎么检查是否用到索引
索引失效的场景
索引的原理是什么
聚簇索引和非聚簇索引是什么?他们分别用在什么场景? 回表是什么?非聚簇索引一定会回表吗?
选错索引会发生什么
间隙锁锁住的时候还可以读吗?间隙锁可能会造成死锁吗?如果锁住很大范围的间隙,怎么解决性能上的问题?怎么解决间隙锁之间的锁冲突?
杂项
杂项
CICD是什么
RPC和gRPC的区别
Docker是什么,有什么用,底层实现原理是什么
说几个常用的Linux命令
算法
算法
常用排序算法的时间复杂度
数组和链表的区别
解决hash冲突方式有什么
计算机网络
计算机网络
DNS 解析的过程是什么
GET 和 POST 的区别
HTTP 和 HTTPS 有什么区别
HTTP 状态码有哪些
HTTPS加密的详细过程
TCP 三次握手
TCP和UDP的区别是什么
VPN的原理是什么
Websocket技术详细介绍
什么是 HTTPS
介绍tcp的滑动窗口和拥塞控制
从输入 URL 到页面展示到底发生了什么
如何优化TCP
心跳技术是什么
解释 DNS 的作用和工作原理
设计模式
设计模式
Restful api是什么
什么情况下需要使用单例模式
代理模式如何使用
工厂模式和策略模式有什么区别?
工厂模式是什么
常用设计模式有什么
怎么实现线程安全的单例模式?
策略模式是什么
面向对象设计模式有哪些原则
面试
面试
25 4 16小厂一面
线程安全的数据结构有哪些