27日常实习-滴滴后端一面45min

1.实习介绍和实验室项目介绍
2.说下Java锁有哪些?CAS算法有什么问题?怎么解决ABA问题?
3.说下HashMap的扩容机制
4.说下Redis的有哪些数据类型?Zset底层结构是什么?为什么选择使用跳表数据结构?
5.Redis实现分布式锁有哪些方式?RedLock红锁知道吗?它解决了什么场景问题?
6.说下缓存穿透、缓存击穿和缓存雪崩的区别
7.刚才项目介绍提到使用ThreadLocal,子线程怎么拿到主线程的ThreadLocal数据?
8.项目中介绍使用了多级缓存,为什么要这样使用?是怎么保证数据一致性的?有了解其他方案吗?
9.spring的常用注解有哪些?@Autowired 和@Resource的区别是什么?
10.spring aop是什么?它是怎么实现的?应用场景有哪些?
11.再介绍一下你简历中AI项目,说下具体实现流程
12.介绍一下你是怎么提高模型召回率?
13.前面介绍做过MySQL数据库的优化,你是怎么做的?
14.为什么分页查询非聚族索引查询要回表?
15.1000万条数据如何统计查询频率最高的前100条数据?使用什么数据结构比较合适?
16.让你来设计一个短链系统,说下你的思路
17.手撕代码题:求出一个整数n完全平方数的最少数量
全部评论
已老实
点赞 回复 分享
发布于 12-06 17:12 河南
已老实
点赞 回复 分享
发布于 12-05 11:05 北京

相关推荐

11-27 12:10
门头沟学院 Java
1. JWT数据格式Header.Payload.Signature,Header存算法,Payload存用户信息,Signature用于防篡改2. 用户感知token过期前端请求返回401状态码本地缓存过期时间主动判断3. 拦截器实现是,实现Spring的HandlerInterceptor接口,重写preHandle等方法4. Bean生命周期实例化→属性注入→初始化→销毁5. 后置处理器实现BeanPostProcessor,在bean初始化前后拦截,如AOP代理生成时使用6. Lombok作用自动生成getter/setter/构造器/toString等,减少样板代码,提升开发效率7. Redis数据结构String/List/Hash/Set/ZSet/Bitmap/HyperLogLog/GEO8. ZSet实现底层用跳跃表(SkipList)+哈希表,跳跃表按分数排序,哈希表支持O(1)查分数9. ZSet查询复杂度O(logn),因跳跃表分层结构,每层跳过约一半节点,类似二分查找10. InnoDB索引类型主键索引、唯一索引、普通索引、全文索引(5.6+)、空间索引11. 索引有效性判断看查询条件是否命中索引字段,是否避免%前缀模糊查询/函数计算等破坏索引的操作12. 索引底层实现B+树结构,普通索引叶子节点存主键值,主键索引存行数据13. 进程vs线程进程:资源分配单位,独立地址空间线程:CPU调度单位,共享进程资源,切换开销更小14. 线程同步措施synchronized/Lock/Atomic原子类/volatile/CAS/ThreadLocal15. TCP关闭流程四次挥手:客户端FIN→服务端ACK→服务端FIN→客户端ACK16. 关闭连接状态客户端:TIME_WAIT(等待2MSL确保包送达)服务端:CLOSE_WAIT(未及时调用close)TIME_WAIT过多会占用端口资源,影响新连接建立手撕 数组最小操作次数
查看17道真题和解析
点赞 评论 收藏
分享
评论
5
25
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务