快手日常一面

1、介绍一下项目的架构,各个模块之间是怎么穿起来的?比如说让你做一个点评项目,你要怎么设计,要采用哪些中间件,

2、你这里用了redis作缓存,为什么要引入redis呢,直接用数据库不行吗?redis相比于直接操作数据库有哪些好处?为什么本项目用redis做缓存?还有其他的缓存吗?为什么不用其他的缓存?

3.Redis有哪些数据丢失问题呢,什么情况下会丢失数据,怎么处理?

回答时提到了集群脑裂问题,那么请详细解释一下为什么发生集群 脑裂问题,应该怎么解决这个问题?

4.我看你使用的是redis分布式锁,为什么要引入分布式锁呢,分布式锁有什么问题呢?比如目前你拿到了个锁,但是redis服务宕机了,该怎么办(可以设置超时释放,那超时释放又有什么问题,怎么解决)

5.为什么用redis分布式锁呢?其他分布式锁不可以吗

6.数据库和缓存怎么保持一致性,说了很多,面试官说其实大多数情况下先更新数据库,再操作缓存就能解决问题,那如果要求强一致性,那就不能用redis吧,要不然这编码太麻烦了,那该怎么办呢?

7、算法题是最长递增子序列

全部评论
有后续吗?
点赞 回复 分享
发布于 09-30 14:18 北京
兄弟去哪了?
点赞 回复 分享
发布于 11-08 12:33 河北

相关推荐

1.自我介绍2.选一个项目讲讲。用了哪些技术3.redis分布式锁怎么实现的。哪个命令?4.还用到哪些redis的数据结构?5.ZSet的数据结构?介绍一下跳表,优点是什么?是否支持范围查询?6.redis的过期策略?项目里怎么实现的?7.redis集群了解过吗?8.redis为什么这么快?redis线程模型9.MySQL的索引类型,聚簇索引和非聚簇索引的区别?查询时候有什么区别?10.MySQL的事务隔离级别,通常情况哪个最好?11.B+树和B树的区别?12.介绍一下红黑树。和B+的区别13.项目里用MQ干什么了,有什么作用14.AOP,用的什么代理。两种动态代理的区别15.怎么实现AOP的功能。16.怎么处理异常。17.Spring常用注解。@Component和@Service,@Autowired和@Resource的区别18.项目有没有用到Spring事务。有没有设计过Spring的事务传播行为?默认的事务传播行为是什么?19.Spring事务有几种实现形式?声明式事务有几种形式?了解xml的形式吗20.线程池的核心参数,核心线程数怎么设置21.线程池的任务执行流程。22.线程数和QPS之间的关系23.怎样解决线程资源竞争的问题。怎样避免?24.介绍一下CPU密集型和I/O密集型任务25.项目里有用到线程池吗26.介绍垃圾回收算法和垃圾收集器27.详细介绍一下G1垃圾收集器。G1基于什么垃圾回收算法?28.手撕:合并两个有序数组。时间复杂度,空间复杂度29.到岗时间,能实习多久30.java多会学的,学校有哪些课,平常看什么书31.反问
查看31道真题和解析
点赞 评论 收藏
分享
6 28 评论
分享
牛客网
牛客企业服务