MetaApp一面

1. 针对你第一段或以Java语言为主的实习经历,介绍一下项目中的亮点或者难点。

2. 你在消息推送改造中使用Redis ZSet加上线程池实现了定时推送,详细说说这个方案的设计思路。

3. 在分布式系统中,多个实例同时扫描Redis ZSet时,要怎么保证任务不会重复执行?

4. 从Redis中取到的任务执行超时(比如超过一秒),你们有什么措施防止任务堆积?

5. 你们的Redis ZSet中是否有过期任务的概念?过期时间设置为多久?如果任务过期了,会怎么做清理?

6. 系统中如果因为系统异常或业务异常,出现轮询Redis ZSet读不到数据(本身有数据却读不到)的情况,有没有做兜底处理?

7. 你在项目中用Redis做服务端缓存,同时将数据缓存在用户本地,怎么保证Redis缓存和数据库(DB)的数据一致性?

8. 你在项目中实现的自定义动态定时任务线程池,详细介绍一下具体的实现方式。

9. 你自定义线程池时,核心参数是怎么选择和设置的?

10. 你有没有为自定义线程池设计过自定义的拒绝策略?

11. 你在项目中使用CompletableFuture做任务编排时,是怎么控制任务的超时时间的?

12. 你在消息推送场景中使用MySQL实现多级队列,具体是怎么解决低优先级任务饿死问题的?

13. 针对C端用户创建订单的场景,怎么保证请求的幂等性,避免用户连续点击导致重复创建订单的问题?

14. 设计一个库存中心系统,数据库和Redis都会记录库存流水和总数,上游业务方发起库存扣减请求时,缓存和数据库的扣减顺序该怎么设计,数据以哪个为准?

15. 你的项目和实习经历中,使用过哪些监控、告警相关的框架或者实现机制?

全部评论
过了吗bro
点赞 回复 分享
发布于 02-09 12:13 河南

相关推荐

昨天 07:38
已编辑
门头沟学院 Java
2.4 一面2.6 二面2.9 三面(hr面)2.13 oc1.15号收到面试电话那会就开始准备,因为一开始没底所以选择推迟一段时间面试,之后开始准备八股,准备实习可能会问的东西,这期间hot100过了有六七遍,真的是做吐了快,八股也是背了忘,忘了背,面经也看了很多,虽然最后用上的只有几道题,可是谁知道会问什么呢自从大二上开始学java以来,一路走来真的太痛了,一开始做外卖,点评,学微服务,大二下五六月时,开始投简历,哎,投了一千份了无音讯,开始怀疑自己(虽然能力确实很一般),后来去到一家小小厂,但是并不能学到什么东西,而且很多东西都很不规范,没待多久便离开,大二暑假基本上摆烂很怀疑自己,大三上因为某些原因开始继续学,期间也受到一俩个中小厂的offer,不过学校不知道为啥又不允许中小厂实习只允许大厂加上待遇不太好所以也没去,感觉自己后端能力很一般,于是便打算转战测开,学习了一些比较简单的测试理论(没有很深入的学),然后十二月又开始继续投,java和测开都投,不过好像并没有几个面试,有点打击不过并没有放弃心里还是想争一口气,一月初因为学校事比较多加上考试便有几天没有继续投,10号放假后便继续,想着放假应该很多人辞职可能机会大一点,直到接到字节的面试,心里挺激动的,总算有大厂面试了,虽然很开心,但同时压力也很大,心里真的很想很想很想进,一面前几天晚上都睡不好觉,基本上都是二三点睡六七点醒了,好在幸运终于眷顾我一次了(可能是之前太痛了),一面三十几分钟结束,问的都不太难,而且面试官人挺好但是有些问题问的很刁钻问到了测试的一些思想并不是理论,我不太了解这方面,但是也会给我讲一讲他的理解,但是面完很伤心觉得自己要挂了。但是幸运的是一面过了(感谢面试官),两天后二面,问的同样不算难,手撕也比较简单,但也有一两个没答出来,面试官人很好并没有追问,因为是周五进行的二面,没有立即出结果,等到周一才通知到过了,很煎熬的两天,根本睡不好,好在下周一终于通知二面过了(感谢面试官),然后约第二天三面,听别的字节同学说hr面基本上是谈薪资了,但是我的并不是,hr还问了业务相关的问题,不过问的比较浅,hr还问我好像比较紧张,而且hr明确说了还要比较一下,我说我有几家的面试都拒了就在等字节的面试(当然紧张,紧张到爆了要),三面完后就开始等结果,这几天干啥都没什么劲,等的好煎熬,终于13号下午接到了电话通知oc了,正式邮件也同时发了,接到以后真的不敢信,很激动但更重要的是可以松一口气了,可以安心的休息一下了终于可以带着个好消息过年了,找实习也可以稍微告一段落了,虽然本人很菜,但是感谢字节收留,成为忠诚的节孝子了因为问的比较简单,面经就挑几个记得的写一下一面:1.实习项目的难点说一下2.针对抖音评论设计一下测试用例3.手撕:合并两个有序数组二面:1.为什么转测开2.线程进程区别,什么场景适合用哪个3.发送一个朋友圈,从发出到别人看到,从数据流转的角度说一下会经历哪些过程4.针对抖音刷到广告视频设计测试用例5.手撕:无重复字符的最长字串
查看8道真题和解析
点赞 评论 收藏
分享
01-18 22:13
门头沟学院 Java
一面: 1. threadlocal有什么作用? 能解决什么问题?2. 为什么缓存词条要使用redis哈希数据结构存储?存的是什么数据? QPS 大概会有多少?属于热点数据吗?3. 缓存雪崩在这个场景下出现的可能不高,为什么选择对雪崩进行处理?  随机时间是怎么确定的?4. 缓存雪崩有什么解决方案?5. cache-aside先更新数据库再删除缓存, 万一删除缓存操作失败了,那么就有可能读到错误的数据?有考虑使用重试或者告警机制吗?6. 多级缓存要怎么保证数据之间的一致性?7. aigc业务场景是什么?  线程池参数怎么配的?8. 批量预加载和内存映射策略是怎么进行优化的?9. sql优化的过程说一下10. 从底层数据结构角度说一下,为什么有这个最左前缀索引法则?11. SpringCloud用过哪些组件?12. 说说自己对限流,熔断,降级的理解。13. 为什么要有注册中心这个概念? 比如用nacos作为配置中心,读取配置要加什么样的注解?14. nacos作为配置中心,如果更改了一个配置,能立即生效吗15. 消息队列的可靠性是怎么保证的(说了rabbitmq)16. kafka是怎么保证消息的可靠性的?生产端,kafka自身,消费端17. 有一个集合装着1-100里的数,顺序排列,但是缺了一个数。怎么找出这个数?18. 二叉树的层序遍历二面:1. 如何保证 Redis 缓存与 MySQL 数据库的数据一致性?2. 刚刚提到在写操作时加锁,是加什么样的锁?3. 加锁时,如果有读操作怎么办?锁的粒度是怎样的?4. 除了加锁,还有哪些技术手段可以保证缓存数据的一致性?5. 使用 binlog 结合消息队列的方案,在写操作频繁时可能有什么问题?6. 什么是“延迟双删”?为什么要 sleep?这样做有什么潜在问题?7. 如果采用“先更新数据库,事务提交成功后再删除缓存”的方案,会有什么问题?8. 你如何理解分布式事务?9. 在同一个微服务系统内,什么情况下也会出现分布式事务?10. 你在本地学习时,是如何安装和搭建分布式环境所需的组件的(如数据库、Redis)?除了本地直接安装,你认为还有哪些更好的方式?11. 你使用过 Docker 吗?常见的命令有什么?12. 你写完一个接口后,如何进行自测?13. 你们的开发流程中有要求写单元测试吗?你认为编写单元测试有哪些好处?14. 如果你的单元测试需要依赖另一个服务的接口,你应该怎么写?15. 你了解 Mock 吗?它有什么用?16. 你写的单元测试会使用断言(Assert)吗?为什么断言很重要?17. 当你需要排查代码缺陷或 Bug 时,具体的排查流程是怎样的?18. 在服务器上排查问题时,你会使用哪些 Linux 指令?
发面经攒人品
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

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