喜马拉雅后端一面

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. 你的事务是怎么实现的?

相关推荐
她说彩礼65万8 小时前
C# 代理模式
开发语言·c#·代理模式
知其然亦知其所以然8 小时前
这波AI太原生了!SpringAI让PostgreSQL秒变智能数据库!
后端·spring·postgresql
程序员大雄学编程8 小时前
用Python来学微积分34-定积分的基本性质及其应用
开发语言·python·数学·微积分
liu****9 小时前
12.线程(二)
linux·开发语言·c++·1024程序员节
黄暄9 小时前
微服务面试题(14题)
java·spring cloud·微服务·架构·java-rabbitmq·java-zookeeper
DKPT9 小时前
如何设置JVM参数避开直接内存溢出的坑?
java·开发语言·jvm·笔记·学习
萤丰信息9 小时前
智慧园区系统:开启园区管理与运营的新时代
java·大数据·人工智能·安全·智慧城市·智慧园区
一 乐9 小时前
智慧党建|党务学习|基于SprinBoot+vue的智慧党建学习平台(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·学习
林一百二十八9 小时前
Python实现手写数字识别
开发语言·python
小小鱼儿飞9 小时前
QT Quick QML项目音乐播放器16----无边框窗口拖动、小窗播放、隐藏系统托盘
开发语言·qt