需要掌握的技术


多线程:


  1. thread runable
  2. sychronized: 锁升级,对象头(细说),优点, wait notify
    lock:公平、非公平,lock/unlock ,await signal
  3. aqs
  4. 死锁如何产生,如何避免,分布式锁实现-redis setnx,redisson(细说),
  5. concurrenthashmap


jvm


  1. 内存模型,方法区(细说)
  2. gc ,cms,g1,
  3. 分代回收, eden,survivor,老年代,复制算法,(811,动态年龄,担保机制),标记整理,标记清楚,染色
  4. gc,可达性分析,gcroot,什么是gcroot(细说)
  5. 线上优化,xmx,xms,printgc,pringDetailGc, 如何避免fullgc, jconsole,jvaulal,arths, jvm基础命令,jmap....(细看)


spring


  1. ioc, 控制反转,说一下容器,beanfactory,applicationcontext. 依赖注入(DI) (细说)
  2. aop, 动态代理,@aspect
  3. 反射,class.forname construct.newinstance
  4. 事务传播,


mysql


  1. sql优化,索引的使用。
  2. 索引, 索引的类型,索引失效,覆盖索引,回表,如何建立索引
  3. 索引类别,hash,b+ tree
  4. 事务
  5. 锁,排他锁,共享锁
  6. mvcc.开始时间,结束时间, ​


redis


  1. 穿透 布隆过滤器, 击穿,雪崩,排他锁,热点数据随机失效, 缓存预热,启动时加载数据。
  2. 如何处理内存满了, 内存回收策略,lru 。key的失效策略,最近最久未使用。(细说)
  3. 扩展,俩种方式,(细说)
  4. 主从,哨兵,分布式唯一id
  5. 线程模型,多路复用(细说)
  6. 分布式锁(细说)


rabbitmq


  1. 重复消费,幂等性
  2. 消息丢失,生产者,消息,消费者
  3. 延时队列,ttl
  4. 削峰填谷


springboot


  1. 常用注解, configuration ,springbootapplication
  2. 自动装配,(细说)
  3. 优点
  4. starter


springcloud


  1. eurake,gateway,hystrix,ribbon


算法


  1. 数据结构:数组,链表,队列,栈,二叉树
  2. 搜索算法,排序
  3. hashmap, 链表转化红黑树是 8 ,红黑树转化链表是6 ,中间隔着7 防止频繁转化。 get源码 ​


不会,我可以学;落后,我可以追赶;跌倒,我可以站起来!