小摆不算摆 level
获赞
276
粉丝
179
关注
9
看过 TA
2695
中国科学院大学
2027
Java
IP属地:安徽
help
私信
关注
快离职啦,面经发出来给大家一面 (25/3/10)答的不是很好,但是面试官非常好,跟我说了很多东西,而且非常有耐心,感恩。实习能够保证6个月,每周至少4天吗?1、自我介绍2、synchronized的底层原理?3、字节码层面上相关的指令有了解吗?4、synchronized锁升级和优化。5、偏向锁是怎么实现的?轻量级锁、重量级锁在操作系统层面怎么实现的,有了解过吗?6、介绍一下volatile的实现原理,说一说JMM。7、还有一个作用。(防止指令重排序)8、从操作系统的层面取理解Java的线程有哪些部分?或者有哪些组成元素?9、线程进行上下文切换的时候都需要哪些东西来保证线程能够恢复到原来的待运行状态?10、说一下Hashmap和concurrentHashMap,介绍1.8之后就行。concurrentHashMap是怎么控制并发的?11、设计模式,说一下单例模式。12、说一下工厂模式常用的地方。13、说一下7层网络模型14、输入一个网址,整个过程有哪些步骤。TCP连接一定会断开吗?15、http1.1和2.0有啥主要的区别?16、jvm运行时的数据区域?17、堆内存分配策略?18、创建一个对象的步骤(业务自定义的类对象)。(类加载、内存分配和初始化(堆)、设置对象头、执行实例初始化代码、返回对象引用)19、类加载机制?20、垃圾回收算法?21、相关的垃圾回收器?22、说一下索引结构?索引类型?23、主键索引会需要回表查询吗?24、最左前缀原则?索引失效场景?25、介绍一下spring中bean加载流程?26、介绍一下threadlocal的原理?怎么处理hash冲突的?27、redis常用的数据结构?28、zset底层实现?插入一个元素的流程?查找时间复杂度?最坏?29、我看你解决了一些缓存问题,你们缓存的主要是什么东西?怎么解决缓存雪崩?30、你分布式锁锁的是什么东西?怎么实现的?手撕:1、线程安全的懒加载单例模式        2、128. 最长连续序列(mid)二面(25/3/12)1、介绍一下linkedlist和arraylist的区别?2、介绍一下threadlocal实现原理和他解决的问题?3、讲一下代理模式和策略模式的区别?4、说一下你的分布式锁怎么实现的?手撕:(手撕平台就基本的高亮,没有代码提示,没有缩进。。。。)1、反转字符串,不准使用reverse函数2、线程安全的懒加载单例模式3、实现一个生产者消费者模式,生产者生产1-100随机数,队列最多放5个元素,消费者消费打印。三面(25/3/14)(当晚offer)开局感谢你的时间,没绷住。1、自我介绍2、你现在研一的话,能实习多久呢?3、看到你参加过一些创新的比赛也拿过一些奖项,比赛中主要做一些什么呢?4、项目是有什么机遇去参加的呢?5、看到你的仿大众点评项目,这个项目是哪里来的呢?6、为什么要做这个项目呢?7、你自己对实习的规划,你希望在实习中获得什么呢?8、技术面完之后,你有什么感受呢?9、我们这边吸引你的点是什么呢?10、你的导师是怎么评价你的?
0 点赞 评论 收藏
分享
03-15 14:27
已编辑
中国科学院大学 Java
一面(25/3/14)答的挺好的,但是手撕看错题了,然后重写报空指针了可恶,然后没写出来,应该寄了。1、自我介绍2、你这几个项目之间的有什么联系吗?3、仿大众点评项目,你学习这个项目有什么收获吗?4、这个项目是从需求开始独立分析,然后技术选型的吗?5、对于技术上的目标是怎么确定的?或者说是有什么需求吗?有没有什么技术指标?6、对于技术选型时,你对与秒杀业务这个接口,你觉着多少个用户同时抢购才会有一些挑战性?或者说接口的压力会比较大?7、介绍一些优惠卷秒杀,分布式锁。8、说一下什么叫做分布式锁?分布式锁指的是锁分布在很多地方还是说很多地方从同一个地方拿锁?9、部署redis了解吗?10、redis常用数据结构?11、说一下redis的持久化。12、介绍一些threadlocal的实现原理。13、说一下你在项目中怎么使用threadlocal的。14、了解跨线程传递threadlocal的问题吗?15、介绍一下Java线程池的参数。16、提交任务到线程池中的流程。17、你通常会选用哪种队列?或者说你了解哪些队列?18、平常学习时,这些知识是从哪里学习呢?19、为什么会选用rabbitmq呢?20、说一下事务的隔离级别,分别会有什么问题?21、介绍一下mvcc。(结合快照读隔离级别吟唱一半被打断,说不要再拓展了,绷)22、索引失效场景。23、索引优化思考。24、扯了一会对于AI的认识,平时有使用过吗,怎么用的,怎么看待?手撕:82. 删除排序链表中的重复元素 II
0 点赞 评论 收藏
分享
03-15 00:45
已编辑
中国科学院大学 Java
问的很简单都秒了,但是面试官没开摄像头,疑似kpi,无后续。--------------------3/14更新,3/12通知给了口头offer,3/13发了意向书,已拒。一面(35min)(25/3/6)(无后续)1、自我介绍2、介绍一下你的那个Python相关项目(本科毕设,web系统+算法模型提供部分接口)3、Java面向对象有哪些特点呢?详细说一下。4、介绍一下hashmap;为什么要把链表转换为红黑树呢?红黑树查找的时间复杂度?1.7和1.8的区别。5、介绍一下concurrentHashmap。6、synchronized锁和Lock锁有什么区别?7、公平锁的一个底层是怎么实现的呢?8、线程池的核心参数、拒绝策略、提交一个任务执行流程?9、spring有哪些特点?(ioc/aop)10、spring中对于循环依赖是怎么解决的?11、MySQL和redis的区别?12、MySQL的索引结构是什么?13、MySQL的事务有哪些特性?怎么保证?14、MySQL的默认隔离级别?可重复读是怎么做到的呢?15、介绍一下MVCC和快照读readview。16、一般在什么场景下会使用redis?17、对于大量的请求,如果此时缓存中还没有写入数据怎么办?18、介绍一下redis实现的分布式锁。19、有用过es和mongo DB吗?(知道,没用过)20、消息中间件用过吗?说一下你的使用场景?21、一个场景,如果说有一个接口响应的比较慢,如果说让你排查,你会怎么去排查?(上下游接口、大key问题,只答了两,后面试官补充)无手撕,反问业务。
胖墩墩的查理在学c语...:哥们我是五号面的 流程差不多
查看21道真题和解析
0 点赞 评论 收藏
分享
03-07 21:43
已编辑
中国科学院大学 Java
一面(25/3/4)(无后续)1、自我介绍,重点描述一下一个项目,承担了什么角色。2、如何用redis实现分布式锁3、讲一下你的项目为什么选择RabbitMQ消息队列,有没有其他更好的方案。4、RabbitMQ消息队列如果出现了大量的消息堆积,考虑可能的原因是什么,怎么去解决?(问了很多)5、开发过程中有独立设计数据库吗?6、编写SQL时候怎么能够查询快?7、编写SQL避免的哪些坑?8、使用Java过程中常见的异常?9、平时开发的过程中时写接口的方式吗?写过rpc接口吗?10、如果报了404,怎么排查?11、之前的项目遇到过哪些问题和前端一起排查?怎么解决的?12、拿短信验证登录功能,如果测试的话会考虑哪些点?(答了很多问了很多,压力测试,前端界面,接口测试等等、、)13、发送短信验证码,你认为这个功能的目的是什么?14、项目有做过一些测试吗?15、开发平台的时候有安全性方面的考量吗?16、基于大量数据的压力测试时,你说到性能上影响,有考虑过安全性方面的问题吗?17、linux常用命令。手撕:46. 全排列变种,字符串去重然后全排列。两道简单sql你认为还有哪些没有问到的你熟悉的相关知识?反问:测开平时干什么不是点点点或者单独测试接口,我们是开发自动化工具去进行测试,我们这边主要还是面向业务的。最后:如果面试通过什么时候能到岗(下周)
查看19道真题和解析
0 点赞 评论 收藏
分享
一面(25/2/28)(挂)1、自我介绍?2、介绍一下什么是索引?3、MySQL都有哪些索引?索引类型?(聚集索引和二级索引)4、举一个项目中的例子,使用MySQL做的查询,依据什么去做的查询?5、有遇到过一些慢查询的场景吗?知道什么是慢查询吗?6、explain关键字你通常会关注哪些输出信息作为判断。7、有遇到过选错索引的情况吗?有别的索引失效的场景吗?8、介绍一下MySQL的事务的隔离级别。9、幻读是一个什么样的场景?10、可重复读的隔离级别可以解决幻读,那他底层是怎么解决幻读的呢?11、你项目中用到的是哪个隔离级别,为什么这么选择?12、如果现在让你选择一个隔离级别,你会参考哪些条件去选择隔离级别?13、介绍一下单例模式。14、说到Bean的两种状态,单例和非单例,那么这两种方式对比一下?15、单例适合哪些场景?16、一般什么类需要去做一个单例?17、写一个线程安全的单例模式的伪代码;为什么要判断两次是否为空呢?18、商户缓存,介绍一下场景,要缓存哪些信息?19、介绍缓存穿透、缓存雪崩、缓存击穿。20、优惠卷秒杀,优惠券存在哪里?(尝试吟唱不断优化过程,被打断,这一块答的有点混乱,最后被批项目不熟了)21、秒杀优化的阻塞队列是通过什么实现的?22、为什么要用这个实现消息队列?有了解其他的消息队列吗?23、异步下单场景,那你怎么通知用户下单成功?(直接成功,并且指出不足,说出有思考下单失败应该怎么办)24、介绍一下点赞排行是个什么功能?为什么使用zset呢?(面试官好像不理解为什么要使用zset)25、了解过zset的底层实现吗?(跳表)如果往zset中添加一个元素,这个过程是怎么样的?26、feed流实现关注推送,关注推送功能是怎么实现的?(推模式)27、有了解过拉模式吗?对比一下推拉模式有哪些优缺点?手撕:(定时20min)带TTL的LRU(天塌了,不会,换了一道)34. 在排序数组中查找元素的第一个和最后一个位置    (用二分然后往两边找,被说时间复杂度不好)反问:应该往什么方面去学习?应该提升一下学习的深度,像刚才zset底层实现你了解是跳表,但是再往深了了解你就没有答出来。简历上列的一些点在日常工作中都能cover到的,需要提升一些深度,虽然说是实习,为了突出你的优点,最好是挑几个方向会了解的比较深。或者说不用了解的特别深,你做过的东西起码要能够完完全全的和别人说的清楚。
晓沐咕咕咕:快手问我可重复读可以解决幻读吗,我说靠临键锁和mvcc极大程度解决幻读但不是完全解决,然后他就要问什么情况下幻读还会出现(正好没背),不要给自己挖坑
查看27道真题和解析
0 点赞 评论 收藏
分享
一面(25/2/26)(过)1、自我介绍2、介绍一下HashMap。(扩容机制、寻址、为什么扩容是二倍)。3、如果说当前有1000个k-v结构数据放入HashMap中,最终HashMap中是什么情况。(数组桶2048个)4、HashMap线程安全吗?哪些是线程安全的hash结构?5、介绍一下concurrentHashMap线程安全实现的原理?(1.8之前、之后)6、list和set集合的区别?7、对list遍历想到几种遍历方式?(按下标、语法糖:、迭代器)8、如果对于list中的元素遍历过程中进行删除满足一些条件的元素,你会怎么做?9、线程池的有几个参数?10、线程池的拒绝策略?默认的是哪种?11、线程池的线程工厂有哪几种?默认的是哪种?12、三个线程顺序打印a,b,c,有哪几种方式实现?13、MySQL的分库分表有哪些方式?如何分库?主键设置?路由id?14、MySQL集群的搭建方式?(答了主从同步,binglog、relaylog、哨兵模式)15、redis主库挂了之后无法承接写操作,这期间的写操作的有效性和一致性如何来保证?16、对于索引来说,字段的选择,组合索引的使用。(答重复度小的,联合索引的部分失效)17、组合索引支持范围查询吗?三个字段第二个字段是时间字段,时间字段进行范围查询会生效吗?18、从持久缓存中把数据加载到redis中的加载策略,如果让你来设计你有什么思路。就是从mysql到redis的这一个过程的策略?(没听明白,答了redis读取mysql的binlog日志进行数据同步)19、redis中分布式锁的实现?(黑马点评开始吟唱)20、OLAP和OATP了解过吗?(???)21、事务了解过吗?这是本地事务,分布式事务了解过吗?22、事务如何开启?(答了隔离等级和解决的问题,mysql命令开启,transaction注解开启)23、在A方法上调用B方法,B方法上使用了transaction注解,B中的事务会生效吗?(this调用无法生效,需要使用代理调用)24、介绍一下单例模式?(答spring的bean默认单例,比较prototype状态是非单例的)25、spring中用到的设计模式?26、消息队列有用过吗?知道是干什么的吗?(了解过,知道有kafka、mq,举例点评里面的秒杀优化)手撕:5. 最长回文子串面试官:在我这里算是一个通过,说一下你的问题:消息队列在日常使用非常频繁,要加紧补出来;缓存加载;分布式事务。对于面试实习来说整体表现算是比较优秀的。反问:公司或者面试官您需要什么样的实习生上手快,培养成本比较低,可以快速的帮正式成员分担一些任务。对于项目来说不一定技术复杂度越高,而是适合的比较好。二面(25/3/5)(挂)1、自我介绍2、把秒杀展开说一说?3、乐观锁怎么解决超卖问题的?4、具体是在哪一步?5、说到分布式,被打断,就单体情况对MySQL操作,能不能解决一人一单超卖问题?6、详细说一下,怎么判断?判断哪些字段?判断完之后成功和失败情况分别是什么样的?7、怎么解决库存超卖?那你怎么解决主从延迟问题?查完了再去写,肯定是有延迟的?(答先判断扣减库存是否成功,成功再下单)8、那你怎么保证这两个操作不被打断呢?(死脑子快转啊,应该是想问事务,用transaction注解,当时脑子里面在想什么啊)9、后面扯来扯去有扯到消息队列里面了。10、分布式锁怎么实现的?(说到误删的问题,面试官说这个问题一般不会有)11、接着拷打巴拉巴拉,又扯回库存超卖问题了。(应该是一直想问事务)12、后面又拷打一些场景手撕:写一个单例模式,get方法没加static,被提醒了一下。总结:其实问的很常规,只不过问的很细节,项目还是不熟吧,反思。
0 点赞 评论 收藏
分享
提问:(项目拷打了很久,很多地方不是很熟悉,还是得把项目好好看一看)1、选一个项目说一下项目背景、实现的业务等(黑马点评)2、超卖是怎么解决的。3、说一下秒杀优化中异步下单的内容。4、一人一单在哪里判断。一人一单的内容记录在哪里。5、为什么要用异步下单?6、阻塞队列中的订单下单失败了怎么办?7、说到实现点赞和关注,那么怎么解决热Key问题?简单说就是问redis扛不住怎么办?8、说到多级缓存,那么多级缓存是怎么做的?9、所以你这个是个人项目,你做的是哪些部分?(哥们竟然不认识黑马点评么,思考)10、Java中有哪些不同的方法可以保证线程安全?加锁(代码块、方法)把变量冗余一份(拷贝一份)11、volatile能保证线程安全吗?12、介绍一些JVM的垃圾回收机制?各自的优缺点?13、详细介绍一下HashMap。(结构、扩容、寻址(put过程)、hash冲突)14、还有哪些处理hash冲突的方式?15、线性探测法有哪几种?各自的优缺点?手撕:236. 二叉树的最近公共祖先写了一会看我大体上都写出来了问了一下我的思路是什么,然后说可以后面自己再调一下吧。反问:我的简历项目比较单薄,我下一步再进行学习应该往什么方向去学习?微服务还是去学一些中间件,或者是都要学。答:从简历上来你做的东西是够的,但是都比较单薄没有往更深处去学习,就像旅游打卡景点一样。单靠自己学习的话可能没有办法确定深入的方向,所以你需要一份实习,有实习之后才有可能在某一方面去加深。没有实习你就没有实际的业务场景去落地,也没有用户,很多问题你是碰不到的。(听的我心里暖暖的)总结:项目拷打偏多,八股偏少。总体上答的还可以,面试官人很好,虽说是在提问,但是每次提问过后都会详细的告诉我问题的答案是什么,原因是什么,受益匪浅。感恩。
小摆不算摆:最自信的一集,问hr说是被刷了
查看15道真题和解析
0 点赞 评论 收藏
分享
傍晚面的,面的比较着急问的不多(面试25min+手撕30min。。。。感谢面试官等我还帮我一起调试,最后调好了。)1、自我介绍2、仿大众点评中登录注册功能,介绍一下。3、双层拦截有哪些作用,或者说能防止哪些攻击?4、ThreadLocal使用的场景和ThreadLocal的原理。5、ThreadLocal会产生什么问题吗?6、子进程能访问父进程ThreadLocal的值吗?为什么?7、介绍一下缓存穿透、缓存雪崩、缓存击穿和你的解决方案。8、使用空对象解决了缓存穿透问题,如果此时再数据库中新增了该空对象,也就是说他现在不是一个空对象了,这个时候怎么办。9、缓存雪崩除了使用随机TTL还有没有其他的解决方案。(分为事前事中事后)10、redis的i/o复用有了解吗?使用哪种机制来避免(epoll)。11、Java基本数据类型有哪些?12、Java的三大特性?多态是怎么体现的?13、介绍一下HashMap。(扩容机制、寻址、为什么扩容是二倍)。14、HashMap中怎样解决hash冲突。15、HashMap中默认的负载因子(加载因子)16、JVM的结构17、栈和堆的区别(空间大小、存储的内容、怎么存储(高向低还是低向高))18、B+树和B树的区别19、从树高的层面来看,B树和B+树那个树更高。手撕:迷宫问题,给一个二维数组内容为0和1,1代表墙壁,0代表通道。求从左上角开始到右下角的最短路劲。(力扣:490 mid)问的不难,但是答的不好。
kught:是硕士✌吗?
查看19道真题和解析
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务