前言
受到疫情影响我从过完年一直呆在家里,索性学点知识方便以后跳槽涨薪,于是从二月份开始学习阿里P8架构师纯手打的一份Java面经手册,没想到5月初我成功从我们三线的一个小公司跳槽进了腾讯,虽然等级不高,但是涨薪还是涨了8K,而且去一个大公司多学点东西,对自己的成长还是有好处的。
虽然说是面经手册,但是里面的涵盖的知识点还是很全面、很细的,一共分了一下十几个大部分:java基础、集合类Set、锁volatile synchronized Lock ReentrantLock AQS C、java多线程:、Java进阶ssh/ssm框架、Java内存模型和垃圾回收、 juc包、设计模式、算法、海量数据、数据结构与算法、数据库、网络、操作系统、Linux命令、安全加密、代码、面经、项目等。
腾讯
一面(支付)
1.jqc的介绍
2.如何确保多台机器不会重复消费
3.如何确保消费了反馈失效问题(用事务管理,先储存再消费,失败就回滚)
4.如何防止数据库单点问题
8.paxos算法
9.raft算法
10.spring的aop实现
11.三种操作,a:++,b:–,c:/2(只能偶数),求i变1的最少次数
12.人才培养(轮流尝试,提出任务,鼓励实现)
13.没有深度的广度没有意义,由广变宅,由浅入深
14.设计时需要经验但堤防经验主义
15.百度技术氛围比腾讯好
二面
1.手写多线程买票代码
2.手写Server