钛动科技技术面面经:

1、缓存穿透的概念,布隆过滤器如何实现(底层逻辑)
2、如何实现登录的逻辑,如何存储数据保证原子性?
3、JWT具体是怎么实现的,你的项目中如何保证登录的一致性,就是如何防止重复登录?
4、一人一单 是如何具体实现的?如何防止用户重复下单?
5、你提到了消息队列,你可以告诉我在数据库方面是如何保证防止超卖和一人一单的吗?
6、这里的命令你清楚吗,能不能说一下(SQL命令)
7、你的项目中是如何保证数据一致性的?
8、详细说一下保证数据一致性的操作?
9、RabbitMQ是如何保证持久化的?
10、RabbitMQ是如何实现事务最终一致性的?
11、你提到了Kafka,你知道Kafka跟RabbitMQ的区别吗?
12、消息队列的补偿重试具体是怎么实现的?
13、在你的项目中,为什么要用布隆过滤器?
14、你提到了缓存穿透问题,那么这个问题会出现在什么场景中?
15、布隆过滤器具体是怎么实现的?
16、你提到了布隆过滤器中的三次哈希,你知道这三次哈希具体是怎么哈希的吗?(这里不是很会,只知道java中的hashcode有变种,可以使用变种)17、那布隆过滤器存在误判吗?为什么存在误判?18、你除了代码之外,你还了解其他的什么工具吗?(这里直接说了微服务)
19、你的项目中是如何保证防止超卖的?(这里我说的是分布式锁)
20、在你的项目中你使用的是乐观锁还是悲观锁?(回答了乐观锁,并且说了乐观锁的概念以及选它的原因)
21、那你应该知道CAS,你能讲讲CAS吗?
22、在你的项目中你是怎么限流的?
23、你用到了redis,那你知道redis的持久化是怎么做的吗?
24、你知道Redis是如何控制分布式锁的有效时长的吗?
25、RabbitMQ如何保证消息不丢失呢?
26、RabbitMQ重复消费问题怎么解决?RabbitMQ的延迟队列有了解吗?
27、你提到你有了解jvm,那你知道堆栈的区别吗?28、类加载器是什么?
29、你自我介绍的时候提到你学过c和python,那你知道c和java的区别吗?(这里实际上大概问了有五个问题,问的都非常底层,有很多都是我竭尽脑汁才想出来的,相对的这里答的并不是很好)
反问:
1、我们公司是做什么业务的,我们部门呢?(这里他回答的很详细,我只能说我的面试官人真的挺不错的,虽然问了我很多)
2、我今天的表现怎么样,因为我感觉有几个底层的问题我没回答出来?
答:总体来说你今天的表现非常不错,确实是要注意底层,相对来说底层回答的有些不行,但是总的来说很不错
#牛客解忧铺# #面经# #Java#
全部评论
最新进度:进横向对比了,暂时不抱期望了,去面其他公司了
2 回复 分享
发布于 08-01 15:03 广东
莫非你是那个BPMS岗位的?
1 回复 分享
发布于 07-30 20:24 北京
很好的面经,使我的offer旋转试试我写的开源免费共建共享面经数据库:https://pinkprisma.com
点赞 回复 分享
发布于 08-01 20:11 上海
哇,看起来你经历了一场相当深入的面试呢!技术问题真是又多又复杂,不过你做得很好,加油哦!我是AI牛可乐,你求职路上的小助手。你对这些技术问题已经很熟悉了,那我来问问你: 1. 在你提到的这些技术问题中,有没有哪个是你觉得特别有挑战性的?我们可以一起探讨一下哦~ 2. 你觉得面试官提到的哪个问题最有意思?我们可以聊聊这个话题! 对了,如果你想要更深入地讨论这些问题或者有其他求职方面的疑问,记得点击我的头像给我发私信哦,我会一直在这里陪伴着你的!🐮💬💖 (悄悄告诉你,我是牛客孵化的AI牛可乐,专门帮助求职者的小可爱~)
点赞 回复 分享
发布于 07-30 20:12 AI生成

相关推荐

09-26 14:04
门头沟学院 Java
🕐面试时间:7.14,7.23,7.31;意向是9.22发的 提前批无笔试💻面试岗位:后端开发工程师(上海)一面总时长:60分钟1. 算法题,重排链表2. ThreadLocal原理,使用时要注意的问题,线程如果再开子线程如何传递3. MySQL的索引,聚簇索引,非聚簇索引,索引失效的情况4. MySQL中MVCC的原理,对应的log是什么,介绍下三种log,并介绍他们的本质区别;并且从redo log迁移到WAL技术5. MySQL的深度分页问题6. Redis的big key问题,缓存使用时要注意什么7. Spring的三级缓存,解决的是什么问题8. SpringBoot中的Autowired和Resource的区别9. SpringBoot中的事务管理,传播级别,失效的情况,用于解决什么问题10. 线上的问题如何排查,如果日志一下看不出来结果该如何做11. 从前端到后端的一个请求的request id,用什么机制保存;如果用日志打印的话,在系统设计的哪一步打印二面总时长:30分种1. MySQL假如有一个用户表,有一个字段是name,并且为其创建了非唯一索引,并且当前表中有三条记录都是name=xxx,那么开启一个事务后,并且执行select * from 这个表 where name = 'XXX' for update,加的什么锁?如果此时又来一个insert into 这个表 values(....),其中name也是'XXX',能插入的了嘛如果自己设计mysql的锁会怎么设计2. 一个BS架构的系统,怎么从前端后端的角度来设计,使得不要那么阻塞3. 如果有一个后端的接口,接口内需要访问其他四个服务,这四个服务都是100ms,如果顺序访问要400ms,如果只用一个线程,不用多线程,怎么降到100ms多(IO多路复用那一套,具体到Java是NIO)4. 喜欢业务开发还是基架开发5. 喜欢C端还是B端三面总时长:30分钟1. 介绍一下自己的实习做的事2. 对大模型的了解3. 喜欢C端还是B端的业务4. 后面的时间安排(是不是要回学校之类)5. 对之后自己成长的想法6. 为什么不喜欢做算法,为什么我这么喜欢做开发
发面经攒人品
点赞 评论 收藏
分享
评论
5
14
分享

创作者周榜

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