喜马拉雅后端一面

1.自我介绍

2.项目拷打

2.1 为什么要用分布式锁?

2.2 用唯一索引能不能保证一人一单,和你的分布式锁比起来怎么用?

2.3 分布式锁是在事务开启前加还是事务开始后

2.4 讲讲你的布隆过滤器是怎么自定义实现的

2.5 讲讲你的Redis和数据库的数据一致性是怎么做到的

2.6 你的乐观锁是怎么实现的

2.7 你的异步处理能够提升多少性能?

八股

  1. 一般用什么IO流?

  2. 什么时候用ArrayList,什么时候用HashMap

  3. HashMap底层结构

  4. Set查询为什么快?

  5. HashMap为什么要从链表转换为红黑树

  6. 什么时候使用线程

  7. 使用线程池有什么好处?

  8. 给十个线程,添加到线程池里面,怎么判断他全部执行完毕?

  9. 为什么会存在线程安全问题,给出具体的例子

  10. sychronized锁住方法是锁住了对象还是锁住了什么

  11. git基本使用,你常用什么命令

  12. 算法拷打

14.1 数字反转:Long:1234->4321,不准转换为string

14.2 字符串反转:" hello world "->"world hello"

14.4 螺旋矩阵

  1. 一道sql

  2. left join和join

  3. String StringBulider StringBufffer

  4. 索引为什么能够加快查询速度?讲讲B+树

  5. 索引分类

  6. 你的事务是怎么实现的?

相关推荐
Flittly3 小时前
【AgentScope Java新手村系列】(16)从RAG到多路检索
java·spring boot·spring
Ruihong3 小时前
Vue withDefaults 转 React:VuReact 怎么处理?
vue.js·react.js·面试
小兔崽子去哪了3 小时前
Java 生成二维码解决方案
java·后端
kyriewen4 小时前
别再这样写 async/await 了:我在 Code Review 中见过最多的 8 个错误
前端·javascript·面试
人活一口气7 小时前
从JVM调优到MCP协议:Java全栈技术体系深度总结与企业级架构实践
java·spring boot
烬羽9 小时前
字符串算法入门:从反转字符串到回文判断,面试不再慌
算法·面试
云技纵横9 小时前
一个 @Async,把 @Transactional 的事务边界打穿了
后端·面试
想要成为糕糕手9 小时前
Harness Engineering:大模型时代的“马鞍”——从记忆层开始,让AI真正为你所用
面试·ai编程·claude
NE_STOP9 小时前
Vibe Coding -- 完整项目案例实操
java
荣码9 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python