高频面试题
学习记录
菜鸟_zhengke
这个作者很懒,什么都没留下…
展开
-
服务器
原创 2020-08-11 11:16:11 · 209 阅读 · 0 评论 -
数据结构
1.二叉树 左<父结点<右节点 2.红黑树(平衡二叉树,hashmap 链表长度>8抓换位红黑树) 1.每个结点不是红色就是黑色 2.不可能出现红色相连 3.根结点为黑色root 4.叶子结点都是黑色 插入的点默认为红色 性质被破坏 3. ...原创 2020-08-06 15:07:42 · 197 阅读 · 0 评论 -
数据库
1.索引原创 2020-08-06 13:47:31 · 193 阅读 · 0 评论 -
redis数据库
1.基本类型 5大基本类型 a、String b、List c、Set d、Hash e、Zset 特殊结构 f、Geo地理位置详解 g、Hyperloglong基数统计 h、Bitmap 2.持久化 1.RDB(默认) 创建一个子进程,按照一定的时间周期策略把内存数据快照到人多不文件 2.AOP 每次命令都会追加到文件最后 3.场景 订阅发布(消息队列) 4.主从复制,哨兵模式 5.缓存穿透、缓存击穿、缓存雪崩(宕机)布隆过滤器 1.缓存穿透(秒杀)布隆过滤器 2.缓存击穿(0..原创 2020-08-05 17:15:54 · 198 阅读 · 0 评论 -
spring系列
1.springmvc的步骤 1.客户端请求到前端控制器(dispatcherServlet) 2.前端控制器请求处理映射器(handlemapping)查询url返回要handle处理对象 3.前端控制器在同处理适配器(handleadapter)执行handle处理器返回 modelandview 4.在通过视图解析器返回视图结果给客户端 5.浏览器渲染页面 2.spring框架 1.核心思想:IOC(控制反转)、AOP(面向切面编程) IOC:将创建类的权利通过程序员托管给spring容原创 2020-08-05 14:21:34 · 374 阅读 · 0 评论 -
集合
1.list a.ArrayList 底层实现数据结构是可变数组,默认容量10,扩增1.5倍 线程不安全 b.LinkedList 底层实现原理链表 线程不安全 c.Vector 线程安全 2.set a.hashset 底层实现 hashmap 实现 3.map 数组+链表 ...原创 2020-08-04 17:09:51 · 194 阅读 · 0 评论 -
集群、分布式、微服务
集群:相同业务部署在多个服务器上 分布式:一个业务拆分成多个子业务部署在不同服务器上 微服务:比分布式力度要更小,一个模块一个服务。原创 2020-08-04 11:47:20 · 186 阅读 · 1 评论 -
jvm
1.jvm包含(方法区、堆、栈、本地方法区、程序计数器、类加载器、执行引擎) a.方法区:线程共享的(常量池、静态变量、常量、类的信息) b.堆:(对象实例=新生代、老年代s1,s2、永久区) OOM内存溢出 c.栈:线程私有(局部变量、实例方法、对象引用、基本类型) d.本地方法栈:jvm调用底层本地方法如启动线程stuat0() native修饰 e.类加载器:加载class文件new类(引用放在栈内存、对象放在堆内存) 2.jvm那些区域会有垃圾回收 jvm调优就是调方法区和堆,栈、本地方法原创 2020-08-04 11:17:20 · 186 阅读 · 0 评论 -
java高并发系列
1.同步和异步? a.同步方法一旦被执行,调用者必须等此方法执行完后,才能继续执行其他行为; b.异步方法像一个消息传递,方法一执行立刻返回,调用者可用继续执行其他操作 2.并发和并行? a.并发就是说在一段时间内,多件事情在这段时间内交替进行 b.并行就是多件事情在同一时刻同时发生 3.JMM(Java内存模型) 1.原子性:操作是不可分的,要么全部一起执行,要么全部不执行 例如:a++ (读变量a,a+1操作,将值赋给a) 锁机制、无锁CAS机制 2.可见性:一个线程对共享变量的修改,原创 2020-08-04 01:12:51 · 307 阅读 · 0 评论