java面试宝典max,最强复习脑图
2021-04-23 16:21:50   0  举报             
     
         
 AI智能生成
  java面试复习脑图max
    作者其他创作
 大纲/内容
  多线程    
     aqs    
     基础数核心    
     双向链表  
     state  
     AbstractQueuedSynchronizer    
     FairLock  
     noFairLock  
     核心方法    
     lock    
     tryAcquire  尝试获取锁  
     addWaiter 加入双向链表  
     acquireQueued 队列中参与自旋  
     unlock  
     应用    
     ReentrantLock    
     可重入锁(防止死锁)    
     可用计数器实现  
     Semaphore  
     子主题  
     工具    
     CountDownLatch  
     CyclicBarrier  
     锁优化    
     自旋,无锁  
     cas  
     有锁  
     线程池    
     关键参数    
     核心线程池个数,最大线程数,keepalive,队列个数  
     threadlocal    
     enter    
     key    
     为什么WeakReference    
     弱引用,在局部方法内,enter中的 theradlocal key 如果为引用,那么就一直不会被回收  
     内存泄漏问题    
     enter中的 theradlocal key变为null,一直没有被回收  
     强 软 弱 虚    
     软    
     内存不足直接回收  
     弱    
     引用计数照样计,但是当对象只有一个弱引用,就会回收  
     虚    
     形同虚设  
     sync  
     基础    
     cas  
     volitile  
     线程状态    
     linux  
     java  
     分布式锁    
     mysql悲观锁  
     redis    
     setnx    
     key唯一,锁超时释放    
     超时提前释放  
     线程失败。导致无法解锁  
     锁的key,由a线程加,a线程执行超时,锁提前释放。b线程加锁,但是a又正常了,a执行解锁操作  
     value设置锁唯一线程key    
     if(uuid.equals(redisTool.get('Test')){
redisTool.del('Test');
}
    redisTool.del('Test');
}
 非原子操作  
     redlock    
     子主题  
     宕机锁  
     锁超时-锁延长  
     zk  
     ectd  
     threadpoolexecuter  
     spring    
     spring mvc    
     mvc  
     spring boot    
     自动配置  
     spring core    
     ioc  
     aop  
     bean的生命周期    
     beanfactoryprocessor    
     单次生效  
     beanpostprocessor    
     对所有bean生效  
     initionBean  
     spring 消息事件    
     spring core    
     ContextRefreshedEvent  
     ContextStartContext  
     ContextStopContext  
     spring boot    
     ApplicationStartedEvent  
     ApplicationPreparedEvent  
     ApplicationReadyContext
  
     系统部署    
     负载均衡    
     dns  
     lvs  
     nginx  
     dubbo  
     https://blog.csdn.net/boonya/article/details/51064482  
     基础    
     java8    
     stream  
     lambda    
     invokedynamic  
     增加元数据区域  
     子主题  
     java基础    
     java数据结构    
     map    
     hashmap  
     hashtable  
     currentHashMap  
     collection    
     list  
     set  
     泛型  
     注解  
     计算机网络    
     网络协议    
     http    
     http 是在TCP/IP 之上的一种传输协议  
     基于tcp的可靠连接  
     无连接    
     针对是http协议,是一种无连接的协议,每次请求只有一次请求/回复。无持续连接的能力  
     无状态    
     针对http协议,无状态是指协议对于事务处理没有记忆能力,区别于同样基于tcp的smtp协议  
     长连接/短连接    
     针对的是tcp连接, 一次tcp连接建立不释放认为是长连接,否则是无连接  
     tcp    
     面向连接
  
     字节流  
     点对点   
     全双工,可靠信道  
     udp    
     无连接  
     报文  
     1对多  
     全双工,不可靠信道  
     dubbo    
     子主题  
     websocket  
     https    
     https的过程  
     序列化协议    
     xml  
     json  
     hessian  
     协议模型    
     osi模型 & tcp/ip模型  
     io模型    
     同步 阻塞的区别    
     同步    
     用户线程与内核的交互    
     用户线程主动    
     同步  
     子主题    
     非同步  
     阻塞    
     线程访问数据    
     等待数据返回    
     阻塞  
     非阻塞 有数据时创建线程处理    
     非阻塞  
     bio    
     面向流    
     FileStream    
     拷贝逻辑    
     磁盘->内核->用户->socket buffer ->网卡  
     同步阻塞  
     nio    
     同步非阻塞  
     模型    
     多路复用器:Selector    
     注册socket到多路复用器线程上,  轮询socket,发现有请求在开启线程处理请求  
     面向缓存    
     磁盘-》直内核接内存-》网卡接口buffer  
     零拷贝    
     channel  
     缓存  
     使用jvm直接内存    
     子主题  
     netty    
     base    
     nio  
     base reactor模型    
     mainreactor 接受连接创建socket  
     sub线程处理读和业务处理  
     高级 reactor模型    
     mainreactor 接受连接创建socket  
     sub线程处理读  
     业务线程处理业务流程  
     数据存储    
     关系性mysql
    
     索引(https://zhuanlan.zhihu.com/p/62018452)    
     数据结构    
     B/B+           
     https://zhuanlan.zhihu.com/p/69666785  
     why 数据结构  
     最左原则  
     聚簇和辅助索引    
     聚簇索引是主建索引, value直接存储行数据  
     子主题  
     数据库理论    
     事务隔离级别    
     READ UNCOMMITTED  
     READ COMMITTED  
     REPEATABLE READ  
     SERIALIZABLE  
     脏读、不可重复读、可重复读、幻读  
     事务的特性acid  
     事务传播特性  
     RR 使用 gap lock实现避免幻读  RC 无gap-lock   
     锁    
     排他锁    
     for update ,insert,update  
     共享锁  
     RR模式    
     gap    
     rr模式下的间隙锁  
     next-key  
     行锁  
     crash safe    
     BinLog    
     server 层独有  
     主从复制  
     redoLog    
     innodb引擎层  
     2pc  
     保证持久化特性  
     https://zhuanlan.zhihu.com/p/184876531  
     Binlog和Redolog的关系: 事务提交的过程中需要同时写redolog和binlog。步骤如下:1)数据改动写入内存,写入redolog,此时redolog是prepare状态; 2)写binlog; 3)commit redolog。
  
     server 和 引擎层的交互    
     https://zhuanlan.zhihu.com/p/74045370  
     https://www.jianshu.com/p/d67f0329d3bf  
     非关系    
     redis    
     String,list,set,zset,hash    
     list,zset 实现原理    
     动态字符串  
     双向链表  
     字典  
     跳表  
     为什么是单线程    
     复杂度,多线程的收益不高  
     缓存    
     穿透    
     select -1  
     击穿    
     单个失效  
     雪崩    
     全面失效  
     集群    
     分片    
     16384  
     redlock方案  
     setnx的分布式锁方案  
     部署    
     哨兵    
     单个主,其他是从,至少是3个哨兵  
     集群    
     多个主  
     正常比如需要3主6从的方式部署  
     一致性hash  
     redssion  
     memcache  
     hbase  
     redis 和 bd的一致性问题    
     https://www.zhihu.com/question/319817091/answer/653985863  
     cache- 设置redis的失效时间  
     cache-更新时delete redis  
     通过canal,监控db的变更  
     jvm    
     gc    
     gc算法    
     回收算法    
     标记整理  
     标记清除  
     标记算法    
     引用计数法  
     可达性分析  
     分代回收    
     年轻代    
     g1    
     Minor GC  
     老年代    
     cms,g1    
     Major GC  
     Full GC  
     jvm参数含义    
     -Xms    
     堆最小大小  
     -Xmx    
     堆最大大小  
     -Xmn    
     新生代大小  
     jvm内存结构    
     主内存/线程内存  
     jvm对象模型    
     oop-klass    
     object ,class对象, instanceKlass    
     举例来说,作为一种JVM实现,HotSpot VM的不同版本就会把静态变量放在不同的地方。
在Sun JDK6 / OpenJDK6或以前的HotSpot VM里,静态变量存储在instanceKlass对象的末尾,而instanceKlass对象存储在一个由GC管理的、名为Permanent Generation的区域中。
在Oracle JDK7 / OpenJDK7及之后的HotSpot VM里,静态变量存储在java.lang.Class对象末尾的隐藏字段里,而java.lang.Class对象存储在普通的Java heap里(不在PermGen里了)。
  
    在Sun JDK6 / OpenJDK6或以前的HotSpot VM里,静态变量存储在instanceKlass对象的末尾,而instanceKlass对象存储在一个由GC管理的、名为Permanent Generation的区域中。
在Oracle JDK7 / OpenJDK7及之后的HotSpot VM里,静态变量存储在java.lang.Class对象末尾的隐藏字段里,而java.lang.Class对象存储在普通的Java heap里(不在PermGen里了)。
 深拷贝和浅拷贝。  
     jvm内存模型    
     规范层面    
     虚拟机栈  
     堆  
     方法区    
     存储class元数据信息,static变量  
     本地方法栈  
     程序计数器  
     实现层面    
     方法区的实现    
     1.7及以前    
     永久代  
     1.8     
     元数据  
     调试工具    
     jstack  
     jmap  
     jstat  
     框架    
     系统间交互框架    
     消息    
     各个消息中间间之间的区别  
     nsq    
     topic ,channel ,nsqdlookup  
     nsqd  
     nsqlookup  
     nsqadmin  
     kafka  
     rabbit mq  
     rocoket mq    
     https://www.cnblogs.com/qdhxhz/p/11094624.html  
     rpc框架    
     dubbo    
     分层  
     https://blog.csdn.net/cwz_cwz/article/details/105901760  
     https/http  
     数据持久化框架    
     mybatis    
     核心流程     
     sqlsession  
     StatemnentHandler  
     paramterHandler  
     ResultHandler  
     sqlsession    
     sqlsession 如何保证线程安全    
     threadlock  
     # $ 安全注入    
     #     
     预编译为字符串  
     $    
     原样替换,容易出现 sql注入  
     分布式框架    
     redis  
     分布式协调器    
     组件    
     watch    
     监控数据节点发送变更时通知  
     监控检查机制  
     一致性算法  
     数据结构  
     持久化方案  
     zk    
     https://juejin.im/entry/6844903717083283464  
     性能问题    
     tcp长连接的健康检查  
     网络分区导致无法注册,形成孤岛  
     全量日志的缓存  
     etcd  
     ap系统的分布式协调器    
     http://www.360doc.com/content/20/0106/12/46368139_884483920.shtml  
     算法    
     算法思想    
     分治  
     贪婪  
     穷举  
     数据结构    
     hash  
     树  
     链表  
     算法评判方式    
     时间复杂度  
     基础算法理念    
     排序    
     快排  
     查找    
     二分    
     没有bug的二分查找  
     子主题    
     快慢指针  
     99.99%    
     故障转移  
     高可用  
     分布式系统    
     cap    
     cp  
     ap  
     base理论  
     分布式事务实现    
     tcc    
     try  confirm cacel  
     可靠消息(本地消息)  
     gts  
     一致性协议    
     paxcos  
     raft  
     应用    
     redis    
     ap  
     zk    
     cp  
     协议:zab  
     etcd    
     cp  
     协议:raft  
    
 
 
 
 
  0 条评论
 下一页
  
   
   
   
   
  
  
  
  
  
  
  
  
  
  
 