秋招面经-小红书-后端开发工程师

一面:

1、自我介绍

2、挑一个项目来介绍一下

3、Java 的 GC 过程会有 Stop the World,谈谈为什么要有 STW 的机制?

4、谈谈 Java 的SGC、G1、ZGC 垃圾回收器

5、G1 已经很不错了,为什么还要有 ZGC 这样的垃圾回收器,为了解决什么问题?

6、比如一个订机票的场景,涉及多个外部系统,首先要去看有没有票,然后第二个是支付要调支付宝或者微信去做付款,定完票可能过了半个小时才告诉我订票有没有成功。对于这种场景下的分布式事务,你认为怎么去处理和设计来保证一致性比较好?

7、基于消息传递的方案,消息可能传递失败,如何解决?

8、如果用消息队列,这种场景,怎么做技术选型?

9、做题:新兵报到,指导员命令所有人按身高大小,从低到高,依次站好,每次从头这边开始调整,但是要求,每次一次只能进行一次交换。输入 N(N <= 20),输出 N 个士兵最终的排列结果。示例:N = 5,heights = [170, 167, 180, 175, 168],输出:[167, 168, 170, 175, 180]

10、谈谈基于数据库的方式如何实现分布式锁?

11、谈谈基于 Redis 如何实现分布式锁?

12、为什么基于 Redis 实现分布式锁时,Set 命令要加 PX 参数?

13、基于数据库方式实现和基于 Redis 实现的区别?应用场景?

14、浅谈实习

15、反问

全部评论
这个是线上面试的吧
点赞 回复 分享
发布于 09-06 19:35 陕西

相关推荐

09-20 00:25
已编辑
深圳大学 Java
1.自我介绍2.企业实习的项目里做的一些比较有技术深度的活,(主要问实习)3.什么情况下会出现缓存击穿4.怎么防止缓存穿透5.redis有几种数据类型,数据类型的应用场景6.redis zset命令操作补充:(1)mysql隔离级别(2)并发事务的问题(3)两阶段提交7.go 和 java 的区别8.在go里面怎么去做继承9.go还有java这种静态语言,觉得和动态语言相比,有什么特点?10.假设在一段代码里,把上层的函数返回的那个error给它直接忽略掉,会有什么样的风险?11.go init方法的执行顺序,它的包依赖其它包,有一个依赖链路,init方法怎么执行12.面向对象的三大特性13.多态和封装怎么体现的14.怎么保证一个接口它具有幂等性15.redis做评论的点赞,保证一个用户只能点赞一次16.redis分片存储key的时候是在一个实例存还是每个实例都存17.在代码里面怎么去判断数据库的insert或者update操作的时候,这个操作是成功了的?(答了根据err和mysql的影响行数,面试官反问影响行数为0的时候,err返回为null还是不为null)18.问了一个项目开发的问题:如果在做一个项目的需求的时候,工期是10天,但是leader觉得时间太长了,他就说,给你加4个人,你有5个人了,你可以在两天时间内帮我做完吗?这个情况你会怎么做?19.QPS为2w的接口,怎么保证接口的一个性能?(答了代码优化、缓存、消息队列异步处理、负载均衡)算法:Leetcode143.重排链表反问:面试表现 + 业务许愿个二面
查看22道真题和解析
点赞 评论 收藏
分享
评论
1
25
分享

创作者周榜

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