字节提前批技术中台一面凉经~
07.26 15:00-16:10 面试官人很好
自我介绍
项目介绍,结合项目问了些问题(qps多少?内存占用多少?后面怎么更新和维护这个项目?打算用令牌桶限流)
JDK平时用的版本?
String类可继承吗? final修饰,不可被继承
HashMap八股 JDK1.7—>1.8变化 底层结构和头插变尾插
并发下怎么用Map?concurentHashMap—底层实现 JDK1.7—1.8 还有别的方法保证线程安全吗? hashmap加锁,但不会用,承载能力没这个好 为什么? 1.7中分段锁底层是什么? put怎么锁 get会锁? 获取Entry数组长度是线程安全的吗?(这个没听过哈哈啊 应该是的吧)
红黑树 set get的时间复杂度?O(logn)
说说并发下的线程安全问题吧(这个是我理解面试官所说的)锁 valtile JUC下的原子类 天然线程安全无状态代码 static
volatile作用?底层实现?
mysql的有哪些存储引擎,对比下
ACID
四大隔离级别
遇到过慢SQL吗? 哈哈 没遇到,自己设计的表很简单,不过我可以说说我对优化SQL和建立索引这块的理解—>一般每个表都会有innodb的自增id,不用业务自带的id,讲了下原因;覆盖索引,尽量不要回表,可以explain查看;哪些适合建索引,索引失效的情况,多个索引和联合索引,最左前缀原则
微服务治理?我没用微服务啊,都是单体SpringBoot——是的,我想看你了解过没?哦哦,那我还是学过SpringCloud和SprinCloudAliababa,因为Netfilx的宣布停止维护自己的组件,所以新一套的微服务技术栈慢慢转变成:
服务注册中心 nacos
服务间通信组件 a.RestTemplate+Ribbon b.OpenFeig组件
服务熔断、流控 sentinel
网关 gateway
服务配置中心 nacosok 我们来个SQL题
NC91 最长递增子序列 这个b题呕死我了,就是我没刷的,LIS是很简单,但我只是在LeetCode上写的,只返回长度,直接DP,但是这个牛客啊,要返回序列,淦,没写完!!!
第一次面大厂,本人算法很不好,也就把剑指Offer和TOP100刷完了,刷了好几遍,平时会看书,因为看之前字节的面经都是问OS,计网,所以语言基础就没怎么看,害,提前批,试试嘛!秋招继续投~