3.16字节后台实习二面
1. 自我介绍
2. 项目介绍
3. 说一下项目中用到的redis分布式锁
4. redis集群模式下的RedLock分布式锁算法
5. 项目中设置的分布式锁超时时间是多少
6. RedLock算法下,如果各有一半的锁分别被两个客户端获取了,怎么处理
7. 说一下项目中怎么用到消息队列
8. 使用RabbitMQ会遇到什么问题吗(我说有可能会遇到消息丢失的情况)
9. 怎么解决RabbitMQ消息丢失
10. RabbitMQ在生产者确认消息到达后,如果还没把消息写入磁盘就挂了,怎么解决这种情况的消息丢失?
11. 需要严格顺序消费的消息和不需要严格顺序的消息,遇到了消息堆积的处理方法
12. 怎么提高消费者消费速度
13. 说一下自己对MySQL的理解(主要说了MVCC怎么解决读写锁互斥的问题)
14. 说一下MySQL主从复制原理
15. 平时使用Docker的场景
16. 了解Docker的资源隔离原理吗(只知道是用了Linux的某个特性)
17. 说一下项目用到了哪些微服务组件
18. 为什么要使用微服务
19. 服务调用失败怎么解决(失败重试机制,服务降级)
20. 调用失败什么情况下进行重试,什么情况进行降级(接口是否幂等性)
21. 什么样的接口是幂等性的,什么不是(读操作的大部分是幂等性,写操作大部分非幂等性)
22. 怎么样让写操作的接口实现幂等性
2. 判断集合相等,回答了用哈希表的方法,时间复杂度O(n),空间复杂度O(n),面试官问能不能降低空间复杂度。
#面经##字节跳动##实习##Java#
2. 项目介绍
3. 说一下项目中用到的redis分布式锁
4. redis集群模式下的RedLock分布式锁算法
5. 项目中设置的分布式锁超时时间是多少
6. RedLock算法下,如果各有一半的锁分别被两个客户端获取了,怎么处理
7. 说一下项目中怎么用到消息队列
8. 使用RabbitMQ会遇到什么问题吗(我说有可能会遇到消息丢失的情况)
9. 怎么解决RabbitMQ消息丢失
10. RabbitMQ在生产者确认消息到达后,如果还没把消息写入磁盘就挂了,怎么解决这种情况的消息丢失?
11. 需要严格顺序消费的消息和不需要严格顺序的消息,遇到了消息堆积的处理方法
12. 怎么提高消费者消费速度
13. 说一下自己对MySQL的理解(主要说了MVCC怎么解决读写锁互斥的问题)
14. 说一下MySQL主从复制原理
15. 平时使用Docker的场景
16. 了解Docker的资源隔离原理吗(只知道是用了Linux的某个特性)
17. 说一下项目用到了哪些微服务组件
18. 为什么要使用微服务
19. 服务调用失败怎么解决(失败重试机制,服务降级)
20. 调用失败什么情况下进行重试,什么情况进行降级(接口是否幂等性)
21. 什么样的接口是幂等性的,什么不是(读操作的大部分是幂等性,写操作大部分非幂等性)
22. 怎么样让写操作的接口实现幂等性
2道算法题
1. 二叉树中序遍历,要用迭代
2. 判断集合相等,回答了用哈希表的方法,时间复杂度O(n),空间复杂度O(n),面试官问能不能降低空间复杂度。
想不出来,后面面试官说可以参照布隆过滤器的算法来实现。