java的常用技术
1、java 集合(Iterable、List、Set、Map,JUC 安全性集合)
2、hashmap(原理,延申)、ConcurrentHashMap(锁:1.8 是 synchronized+node,1.7 是 segment)
3、乐观锁(比较 / 交换)和 悲观锁
5、线程池
5.1 运行状态
5.2 运行过程
5.3 其他核心参数
6、mysql 事务隔离级别
6.1 读已提交
6.2 读未提交
6.3 可重复读
6.4 串行化
7、mysql 存储引擎
常用的比如 innodb 和 mysiam
8、mysql 索引
主要是:聚簇索引 -- 主键索引
9、最左匹配原则
10、sql 调优
离散性很低的数据字段列不需要建立索引,字段是否建立索引,索引失效的情况,多表数据量大时,不要使用连表查询。(两张表的测试性能,一张表 30 万数据,另一张 3 万数据)(单表数据量大,500 万和 2000-4000 万的时候性能会急剧下降,或存储其他数据库如 es、mongdb 等进行存储调优)
11、接口调用 500 毫秒进行调优
12、JVM 的堆栈、本地方法区
13、内存调优
14、springmvc 原理
15、spring 的两大特性:bean 的管理(AOP 和 IOC)
16、springboot 的自动装配(约定大于配置)
17、分布式事务、性能监控(skywarking、普罗米修斯)
18、mq 生产者、消费者、重发机制、手动确认、防重复消费
19、redis 五大常用数据类型 三大新数据类型(bitmap)
20、布隆过滤器
21、redis lua 脚本
22、redission 锁,看门狗机制(30 秒自动续锁)
23、es 查询
filter 不计算分值,性能更好、skript 脚本、查询数据不能超过 1 万条,可配置