高频面试题
学习记录
菜鸟_zhengke
这个作者很懒,什么都没留下…
展开
-
服务器
原创 2020-08-11 11:16:11 · 198 阅读 · 0 评论 -
数据结构
1.二叉树左<父结点<右节点2.红黑树(平衡二叉树,hashmap 链表长度>8抓换位红黑树)1.每个结点不是红色就是黑色2.不可能出现红色相连3.根结点为黑色root4.叶子结点都是黑色插入的点默认为红色性质被破坏3....原创 2020-08-06 15:07:42 · 185 阅读 · 0 评论 -
数据库
1.索引原创 2020-08-06 13:47:31 · 180 阅读 · 0 评论 -
redis数据库
1.基本类型5大基本类型a、Stringb、Listc、Setd、Hashe、Zset特殊结构f、Geo地理位置详解g、Hyperloglong基数统计h、Bitmap2.持久化1.RDB(默认)创建一个子进程,按照一定的时间周期策略把内存数据快照到人多不文件2.AOP每次命令都会追加到文件最后3.场景订阅发布(消息队列)4.主从复制,哨兵模式5.缓存穿透、缓存击穿、缓存雪崩(宕机)布隆过滤器1.缓存穿透(秒杀)布隆过滤器2.缓存击穿(0..原创 2020-08-05 17:15:54 · 189 阅读 · 0 评论 -
spring系列
1.springmvc的步骤1.客户端请求到前端控制器(dispatcherServlet)2.前端控制器请求处理映射器(handlemapping)查询url返回要handle处理对象3.前端控制器在同处理适配器(handleadapter)执行handle处理器返回 modelandview4.在通过视图解析器返回视图结果给客户端5.浏览器渲染页面2.spring框架1.核心思想:IOC(控制反转)、AOP(面向切面编程)IOC:将创建类的权利通过程序员托管给spring容原创 2020-08-05 14:21:34 · 360 阅读 · 0 评论 -
集合
1.lista.ArrayList 底层实现数据结构是可变数组,默认容量10,扩增1.5倍 线程不安全b.LinkedList 底层实现原理链表 线程不安全c.Vector 线程安全 2.seta.hashset 底层实现 hashmap 实现3.map数组+链表...原创 2020-08-04 17:09:51 · 180 阅读 · 0 评论 -
集群、分布式、微服务
集群:相同业务部署在多个服务器上分布式:一个业务拆分成多个子业务部署在不同服务器上微服务:比分布式力度要更小,一个模块一个服务。原创 2020-08-04 11:47:20 · 173 阅读 · 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 · 176 阅读 · 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 · 264 阅读 · 0 评论