1.java中都有什么锁
2.synchronize与Lock的区别
3.synchronize与Lock谁更快?
4.讲讲ReentrantLock这块你的理解
5.什么是可重入锁?有什么前提条件
6.Lock的锁是怎么实现的
7.Lock的公平和非公平
8.多线程有几种创建方式
9.java的线程池有几种
10.线程池的execute和submit的区别
11.线程池有哪几个参数,每个参数代表什么意思
12.线程池的拒绝策略有哪些,分别是什么
13.线程池可以设置哪几个阻塞队列
14.线程池底层是如何实现的,线程执行完毕是如何唤醒等待线程的
15.AQS是如何保证线程安全的
16.谈谈你对Threadlocal的理解
17.Threadlocal使用完之后需要清理吗?为什么
18.多线程之间如果保证数据的共享以及一致性
19.CAS是什么、会出现ABA的问题,如何解决
20.shutdown和shutdown的区别
21.多线程中,run和start的区别
22.Semaphore信号量的原理
23.countlatchdown使用过没,在什么情况下使用
1.mysql中都有什么锁
2.什么时候会使用到行锁、什么时候使用到表锁
3.mysql索引的数据结构是什么样的?
4.如果让你设计一个表,你会怎么设计?注重哪几个点
5.myisam和innodb的区别
6.聚合索引与非聚合索引的区别
7.都做过什么sql优化
8.mysql可以不设置索引吗?为什么
9.mysql的特性都有哪些
10.mysql的隔离级别都有哪些、默认是哪个
11.ACID是什么
12.可重复读会导致幻读吗
13.redis都支持什么数据类型
14.redis有哪几种持久化方式,都有什么优缺点
15.redis的哨兵与集群模式你来讲讲
16.用过分布式锁吗?他是怎么实现的
17.什么是缓存穿透、缓存雪崩、如何避免
18.redis有哪几种淘汰策略
19.reids过期数据,是如何删除的
20.redis是单线程的,为什么还那么快
21.redis是如何存储数据的、说说你对哈希槽的理解
22.redis和mongodb的区别
23.mongodb也有索引,他的底层数据结构是什么样的
24.mongodb为何那么快
25.mongo的分片是如何实现的
1.rabbitmq如果保证了消息的可靠性
2.如何保证生产者把消息发送到rabbitmq
3.如果保证消费者消费了消息
4.如何避免消息重新投递或重复消费
5.使用mq的好处
6.rabbitmq消息是如何进行分发的
7.rabbitmq如果做失败重试的
8.rabbitmq死信的理解
9.探探你对kafka的理解
10.kafka如果保证了消息的可靠性
11.kafka数据传输的事物定义有哪几种
12.kafka的消息是有序的吗
13.kafka是如何消费消息的
14.如果kafka中一个broker崩掉了,内部都做了什么是事
15.kafka如何保证了消息的不丢失
1.有一个高并发抢购活动,你如何对这个进行系统设计
2.有个100G的ip登陆信息,现在只有十台台服务器4G的,需找出ip访问最多前十名的ip
3.现在生产出现了oom,你是如果进行排查的
4.经分析,线上有线程出现了死锁,请问你如何进行排查
5.现mysql经常报错死锁超时异常,问你如何进行解决
6.现有一条sql,每次执行耗时500ms,我需要将这个耗时保证在100ms以下,你会从哪几个纬度去分析
最后总结
搞定算法,面试字节再不怕,有需要文章中分享的这些二叉树、链表、字符串、栈和队列等等各大面试高频知识点及解析
最后再分享一份终极手撕架构的大礼包(学习笔记):分布式+微服务+开源框架+性能优化
最后总结
搞定算法,面试字节再不怕,有需要文章中分享的这些二叉树、链表、字符串、栈和队列等等各大面试高频知识点及解析
最后再分享一份终极手撕架构的大礼包(学习笔记):分布式+微服务+开源框架+性能优化
[外链图片转存中…(img-jEIfq1q9-1720122230271)]