只知 level
获赞
71
粉丝
10
关注
0
看过 TA
584
门头沟学院
2026
Java
IP属地:陕西
暂未填写个人简介
私信
关注
09-24 00:25
已编辑
门头沟学院 Java
为什么面试八股文总是能被问道不会的地方。1.第一次乐读面试官问假如有十个线程对一个值为一成员变量执行加一操作,怎么能保证他的最终结果是11,我嘴角微微上扬,这不就是一个简单的线程安全问题吗,我直接说可以用synchronizated锁,结果面试官说除了锁呢(下去直接恶补了多线程并发的一系列问题包括原子变量 Volatile关键字这些)2.第二次shoopee面试,面试官问怎么保证消息队列的顺序消费,当时我嘴角微微上扬心想终于问道我会的了,我直接说生产者根据业务id将消息路由到同一个队列上,队列是天然有序的,消费者单线程消费这个队列。面试官直接追问我说假如我想消费端进行异步消费呢?又给我问懵了,下去再恶补顺序消费这一块(原来可以在消费端进行二次路由,根据业务id将消息路由到相同的线程进行处理)3.第三次拼多多面试,面试官问redis的持久化策略。我嘴角依然微微上扬,心想这不就是AOF和RDB吗一个追加写一个快照写,我刚开口,面试官就打断我说什么时候进行持久化,我又懵了,我心想我项目里面也没进行过持久化啊。4.第四次科大讯飞面试,面试官问我服务之间的通讯方式吗,我嘴角依然上扬,这不就是openfign吗,这次我不仅知道,还经常用,谁知道我刚说完openfign,面试官就问我他用的什么协议,我说了http,他又问为什么用http,我说http稳定,他说还有别的吗?我懵了,我说别的不太清楚,他又问服务之间通讯还有别的协议吗?我说还可以用WebSocket,我看到面试官失望的表情,仿佛知道了我的面试结果。这周恶补了netty,dubbo,RPC,明天面试,希望可以回答的游刃有余。9.24更新5.今天面试,面试官问我MySql索引了解吗?这次嘴角不敢上扬了,但我心想不就是InnoDB那些B+树、聚簇索引、非聚簇索引、索引失效、为什么选B+树当索引这些问题当索引吗,早已经背的滚瓜乱熟。但是面试官问我身份证应该怎么加索引,我又懵了,当时想了很久然后脑子一热直接说了个full text索引,可以给身份证加这个索引,防止在 %具体值% 模糊查询的时候索引失效,回答完直接后悔了,感觉面试官想听的可能是具体分析身份证的使用场景(因为身份证大多是用在精准查询场景下的,一般不会出现左右都模糊查询的场景,如果想具体查中间某一部分(例如想查询出生日期、地区这些信息),可以把中间的值单独作为一列存储起来,而不是加full text索引)
小小:用最少的精力准备最有效的八股:https://m.nowcoder.com/mianshi/top
查看9道真题和解析
0 点赞 评论 收藏
分享
09-05 23:21
门头沟学院 Java
多益网络: 1.自我介绍================项目部分===================================2.说一下项目中的难点3.你的项目里用到了哪些线程的管理工具4.说一下线程池,项目中哪里用到了线程池,为什么用线程池5.线程池的参数是怎么设置的=================八股部分==================================6.当你输入一个网址的时候发生了什么7.Http请求的状态码8.当前端用户重复点击了,或者网络出现抖动了怎么处理=================算法部分==================================9.输入一个n表示括号的对数,输出由这么多对括号可以生成多少组有效的括号序列(最后只有八分钟了没A出来)拼多多提前批:1.自我介绍================项目部分===================================2.介绍一下你实习的项目3.我看你项目里面用到了一个周期性的线程池(ScheduledThreadPool),去定期的将本地的日志持久化到oss中,能简单的说一下这部分吗4.为什么要用ScheduledThreadPool5.假如ScheduledThreadPool挂了怎么办(我怎么知道他挂了?以及挂了后怎么处理)6.怎么和oss对接的?6.我看你项目中用的Rocket MQ,为什么用Rocket MQ,不用kafka或者其他的?=================算法部分==================================7.给你一个数组 数组中的元素只会出现一次或者两次(数组中的元素的值k,数组长度n  0<k<n),找出所有出现一次的元素(要求时间复杂度O(N),空间复杂度O(1))(算法只记得之前刷到过,只想起来了利用HashSet的实现,面试官说让我再仔细思考一下完全满足条件的方法,想了很久才写出来)=================八股部分==================================9.redis用过吗,什么场景下会使用redis10.redis的持久化机制,什么情况下会缓存11.mysql什么时候会用乐观锁两个面试就记得这么多,多益网络基本围绕项目问,难度偏低,全程40分钟,最后算法题只有八分钟,没A出来只说了个大致思路,最后面试官问了会从哪里获取知识,最近在关注什么技术,没有反问环节。拼多多不单单会问你怎么实现的更会去关注为什么要这么做,很多都没答上来,考察场景题多一点,全程50多分钟,有反问环节,面试官很专业。
查看19道真题和解析
0 点赞 评论 收藏
分享
08-26 23:52
已编辑
门头沟学院 Java
1.redisson是如何实现分布式锁的?通过set key value NX(保持互斥性) EX(过期时间,避免死锁) 实现的2.多线程并发情况下,释放锁需要做什么操作?释放锁时通过Lua脚本检查锁的持有者是否为当前线程,确保只有当前线程才能释放锁3.一个成员变量的值是1,十个线程每个线程对他加一,他最后的结果是多少?如何保证他的结果为11 (除了加锁之外还有其他的实现吗)?最后的的结果不能确定,可以使用锁和使用原子变量(例如AutomaticInteger)来保证他的结果为114.mysql的数据引擎是如何避免脏读的?脏读指的是一个一个事物读取到了其他事物没有提交的数据。如何避免:MVCC+读快照5.ConcurrentHashMap在java1.8的新特性Jdk1.8抛弃了分段所的设计,采用了与HashMap类似的数组+链表+红黑树的结构,通过synchronized、CAS和volatile来实现线程安全6.mq如何实现消息幂等性?在业务层面上,记录下已经处理过的消息的唯一标识,在每次处理前先检查该消息是否被处理过。7.spring 一个接口有多个实现 autowared注解 在注入的时候可以正常注入吗?在默认情况下不能,但Spring提供了多种解决方案来明确指定要注入哪个Bean,利用通过Qualifier注解来指定要注入Bean的名称8.AB两个方法A方法中调用B、假如A开启了事物,B也会开启事物吗?取决于事务的传播行为。9.Spring事务是基于什么实现的? AOP是通过什么实现的,方法A中调用方法B,A开启了事务,也会生成B的代理对象吗?事物是基于AOP实现的,AOP是通过动态代理实现的。如果方法A和方法B处于同一个类中则不会生成B的代理对象(同时事物会失效),如果确实存在这样的需求可以在该类中注入自己10.当一个对象被加载时一定会出现在新生代吗?一个对象被加载时,极大概率会出现在新生代,但如果它是一个非常大的对象,或者遇到了需要“分配担保”的特殊GC场景,它可能会直接在老年代被创建或安置
查看10道真题和解析
0 点赞 评论 收藏
分享

创作者周榜

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