京东实习一面

1. 10w条数据读入内存,放入hashmap,不能重复
2. hashmap使用时要初始化容量的
3. 怎么判断10个线程处理完所有的数据
4. countdownlauch的原理
5. AQS的原理,还有什么实现的countdownlauch
6. 怎么断点续传
7. 订单系统内,怎么分库分表
8. 分库分表时,怎么查询用一个用户的订单
9. ES数据库
10. binlog日志,怎么同步跟新es
11. 怎么保证数据不丢失
12. 最左匹配原则
13. buff pool是什么
14. where条件什么时候会命中索引,什么时候会索引失效
15. Mysql的主从同步
16. redis哨兵机制
17. zset底层
18. redis 分布式锁,redis看门狗机制
19. redis热key问题
20. 哪些提供本地内存
21. 策略模式和模版方法模式
22. 线程池的线程数越多越好吗
23. RPC框架,分几部分
24. mybatis,分库分表时,一样的sql怎么查询具体的数据
25. 数据库连接池
全部评论
第一题:containsKey判断,无则放,有则不处理,还要考虑容器初始化:根据负载因子0.75得hashmap最少要(100000 / 0.75=133334)
1 回复 分享
发布于 2024-12-09 16:18 广东
CountDownLatch,始化一个CountDownLatch对象,设置计数器为 10(对应 10 个线程),在每个线程执行完任务的最后调用countDown方法使计数器减 1,主线程通过调用await方法阻塞等待,直到计数器变为 0,表示 10 个线程都完成了任务
1 回复 分享
发布于 2024-12-09 16:20 广东
第一个怎么回答
点赞 回复 分享
发布于 2024-11-27 19:37 白俄罗斯
第二题:初始化因子公式:(int) Math.ceil(n / 0.75)
点赞 回复 分享
发布于 2024-12-09 16:19 广东
第四题:CountDownLatch基于AQS(AbstractQueuedSynchronizer)实现。它内部有一个计数器,构造函数中传入初始计数值,当线程调用countDown方法时,会通过AQS的原子操作使计数器减 1。而调用await方法的线程会阻塞等待,直到计数器的值变为 0,这时AQS会释放阻塞的线程,让它们继续执行后续逻辑,主要用于协调多个线程之间的执行顺序,等待一组操作完成后再继续下一步操作。
点赞 回复 分享
发布于 2024-12-09 16:21 广东
第五题:AQS是一个用于构建锁和同步器的基础框架,它维护了一个同步队列(基于双向链表实现),内部通过一个int类型的状态变量来表示同步状态,并提供了对状态进行原子操作(如获取、设置、CAS 操作等)的方法。通过继承AQS并重写其部分方法,可以实现不同的同步器。
点赞 回复 分享
发布于 2024-12-09 16:21 广东
第六题:断点续传主要依赖于分片上传,将一个文件分成n份,进行上传,如果上传失败,查询后端接口判断还有那几个没有上传,然后再将没有上传的文件重新上传,上传完合按顺序合并就可以了
点赞 回复 分享
发布于 2024-12-16 16:27 四川

相关推荐

2024-12-25 15:26
南京邮电大学 Java
已老实,有点慌张,面试官让我不用紧张😰放轻松,听说分享面经运气会变好,特此分享基本数据结构(答八大数据基本类型,回答错了面试官让我重说,我说hashmap,set,list)数组的特点(答下标查询,查询方便)list的特点(答单链表双向链表,,插入删除除非首尾都是on)list和数组的对比(答list插入删除方便,但是复杂度都是一样的,不过不用移动元素)集合结构(答set,hashset)抽象类和接口如果要设计一个门什么作为抽象类什么作为接口jdbc链接原理(如果没有配置springjdbc)(经面试官引导,说建立链接,验证,解析命令执行sql,返回,面试官问返回后接着干什么,我说给数据赋值,他说关闭链接)数据库连接池如果让你创建,你怎么做连接池用什么数据结构(答hashmap,)为什么要用hashmap,多线程冲突怎么办(答currenthashmap),如何解决性能问题(没答出来)caffeine(有那些参数,答当时只设置了最大存储空间和过期时间)为什么快,底层原理(答不了解)如何设计一个服务端接口(举了项目中一个例子,面试官说绕了个圈子,面试老师说需要先反问明确需求传参类型,返回值类型...)连接池底层原理,主要参数(答最大线程数,核心线程数,过期时间,阻塞队列,handler)阻塞对列有哪些(fixedtreadpool,阻塞队列,优先权队列之类的)面试官人很好,我不会的都解释了让我回去后好好看看😂,感觉凉凉了
查看14道真题和解析
点赞 评论 收藏
分享
从我今年八月开始找实习,已经面了字节五轮了:1. 火山引擎:反馈26届不适合业务对接2. Data:拒二面,去了快手3. 国际商业化:算法没a出来,挂4. 抖音:算法挂5. Tiktok:offer字节目前算是我面过最多次数的大厂了,入职那天也和ld单独在餐厅、咖啡馆聊了几个小时,同时也有其他朋友面字节,或者在字节实习。下面,我根据我和我朋友的面试经历,以及我和ld聊天的内容,给26届找实习的兄弟们一些经验,以供参考!(仅限于后端方向)算法方面:1. 算法没做出来,不管你前面答的多好,极大概率就挂了。八股、项目、实习,只决定面试官想不想要你,但是算法决定面试官能不能要你。2. 算法题是有评分的,大致上是这样,没做出来是一档,暴力是一档,最优解是一档3. 有时候算法不止一道,比如我面Data,出了两道,朋友面飞书,出了三道...4. 算法有时候出的会特别非常规,比如我Tiktok一面,出的是神经网络相关的平均池化问题5. 算法出的难,也是一种考核,和面试官想不想要你没有关系(但是如果面试官很想要你,是有可能会出的简单,甚至你不会做的时候还会给你提示或者换题)总结:算法很重要!先把算法刷好,再准备面试。我每次挂,不管有没有其他原因,反正那次面试的算法一定没做出来关于进面:1. 学历很重要!学历好,简历差也能进面。但是学历差,简历好,就不一定了。ld说,之前实习简历太多了,甚至会写脚本根据学历来筛(其他方向,可能学历要求会低一点)2. 面评,业务评估简历的时候,会看以往面试的面评(老生常谈了)3. 实习经历,个人认为重要的是title,ld说看我在快手实习过才决定面我。理由是,快手已经筛选过一次了,除非快手眼瞎了。(这次实习做的是架构,快手做的是业务,ld让我把快手的做的东西忘掉,所以我个人认为,实习的话,title > 内容)4. 至于项目,我做的是两个烂大街项目,面试官基本上没问过,写在简历上纯是凑字数的。总结:学历!面评!实习经历!其他:1. 字节认为人是不可培养的,我跟ld确认过这句话,ld说是的2. 实习生面试很少kpi面,不管字节还是其他大厂,大概率都不会拿实习生刷什么kpi(我在快手和字节呆过,至少快手和字节是这样的),大家都很忙的。如果你觉得某场面试挂的离谱,可能是已经招到合适的了,没有hc了,再面你就是走个流程;或者是,评估你简历的人觉得可以,但是面你的人,觉得你简历不行。再或者是,刚开始聊几句,就觉得不行了,后面都只是顺着你的话来说(这也是有时候为什么感觉和面试官聊的还行,但是秒挂的原因)。目前就想到这么多了,欢迎大家补充!也欢迎大家互相交流!
查看5道真题和解析
点赞 评论 收藏
分享
评论
8
90
分享
牛客网
牛客企业服务