字节提前批技术中台一面凉经~

07.26 15:00-16:10 面试官人很好

  1. 自我介绍

  2. 项目介绍,结合项目问了些问题(qps多少?内存占用多少?后面怎么更新和维护这个项目?打算用令牌桶限流)

  3. JDK平时用的版本?

  4. String类可继承吗? final修饰,不可被继承

  5. HashMap八股 JDK1.7—>1.8变化 底层结构和头插变尾插

  6. 并发下怎么用Map?concurentHashMap—底层实现 JDK1.7—1.8 还有别的方法保证线程安全吗? hashmap加锁,但不会用,承载能力没这个好 为什么? 1.7中分段锁底层是什么? put怎么锁 get会锁? 获取Entry数组长度是线程安全的吗?(这个没听过哈哈啊 应该是的吧)

  7. 红黑树 set get的时间复杂度?O(logn)

  8. 说说并发下的线程安全问题吧(这个是我理解面试官所说的)锁 valtile JUC下的原子类 天然线程安全无状态代码 static

  9. volatile作用?底层实现?

  10. mysql的有哪些存储引擎,对比下

  11. ACID

  12. 四大隔离级别

  13. 遇到过慢SQL吗? 哈哈 没遇到,自己设计的表很简单,不过我可以说说我对优化SQL和建立索引这块的理解—>一般每个表都会有innodb的自增id,不用业务自带的id,讲了下原因;覆盖索引,尽量不要回表,可以explain查看;哪些适合建索引,索引失效的情况,多个索引和联合索引,最左前缀原则

  14. 微服务治理?我没用微服务啊,都是单体SpringBoot——是的,我想看你了解过没?哦哦,那我还是学过SpringCloud和SprinCloudAliababa,因为Netfilx的宣布停止维护自己的组件,所以新一套的微服务技术栈慢慢转变成:
    服务注册中心 nacos
    服务间通信组件 a.RestTemplate+Ribbon b.OpenFeig组件
    服务熔断、流控 sentinel
    网关 gateway
    服务配置中心 nacos

  15. ok 我们来个SQL题

  16. NC91 最长递增子序列 这个b题呕死我了,就是我没刷的,LIS是很简单,但我只是在LeetCode上写的,只返回长度,直接DP,但是这个牛客啊,要返回序列,淦,没写完!!!

第一次面大厂,本人算法很不好,也就把剑指Offer和TOP100刷完了,刷了好几遍,平时会看书,因为看之前字节的面经都是问OS,计网,所以语言基础就没怎么看,害,提前批,试试嘛!秋招继续投~