秋招面经-京东Java 后端一面

1. MySQL的索引失效场景有哪些?
2. Redis中ZSet的底层数据结构是什么?
3. Java创建线程池的方法及核心参数含义;这些参数应如何设置,需考虑哪些因素?
4. 主线程启动10个子线程后,需等待所有子线程执行完毕再继续运行,有哪些实现方式?(可使用CountDownLatch、Semaphore等)
5. CountDownLatch的底层实现(基于AQS);AQS的底层原理(state变量+CLH锁队列)。
6. 自定义类存入HashMap时需注意什么?(重点说明Equals和HashCode方法的重写要求);若只重写HashCode方法会出现什么问题?请举例说明。
7. 电商下单场景要求时延小于10ms的比例达到N个9,从JVM调优角度如何优化?(如减少GC次数、选用STW时间短的垃圾回收器);进一步说明减少FullGC次数的具体方法。
8. Spring中@Transactional的失效场景及原因;若需在方法内调用本类其他事务方法(避免this调用导致失效),该如何实现?
9. @Transactional的底层原理是什么?如何保证事务生效?
10. Spring的AOP默认使用哪种代理方式?
11. 设计消息队列中间件时,如何保证消息不丢失、不重复消费?若消息乱序到达,如何确保消费者按序消费?
全部评论
哪个部门
点赞 回复 分享
发布于 12-04 09:29 北京

相关推荐

12-22 12:15
门头沟学院 Java
1、实习介绍,看机会原因,项目。2、redis常用的数据结构,项目中用过哪几种,业务中使用的场景3、redis的hash怎么实现的,rehash过程讲一下 和JavaHashMap的rehash有什么区别?redis cluster怎么做到高可用的?4、redis集群和哨兵机制有什么区别?redis的持久化机制了解吗?遇到过redis的hotkey吗?怎么处理的?5、redis是单线程的吗?单线程为什么还这么快?讲一讲redis的内存模型?6、简单说一下RabbitMQ的工作原理?如何保证消息的顺序执行?7、卡夫卡了解吗?和RabbitMQ有什么区别?8、tcp/udp简单说下两者的区别?tcp为什么要三次握手和四次挥手?两次握手可以不?会有什么问题?tcp怎么保证有序传输的9、讲下tcp的快速重传和拥塞机制,知不知道time_wait状态,这个状态出现在什么地方,有什么用?10、http与https区别?https是怎么做到安全的?11、有没有了解过协程?说下协程和线程的区别?用过哪些linux命令?如查看内存使用、网络情况?12、你了解哪些设计模式啊。挑一个熟悉的讲讲?(除了单例模式)在项目中有用过设计模式吗?讲讲你怎么用的?简单说一下适配器模式和装饰器模式?13、索引的常见实现方式有哪些,有哪些区别?14、MySQL的存储引擎有哪些,有哪些区别?InnoDB使用的是什么方式实现索引,怎么实现的?说下聚簇索引和非聚簇索引的区别?15、raft算法的基本流程?raft算法里面如果出现脑裂怎么处理?16、paxos和zookeeper的zab算法,他们之前有啥区别?17、如果我是想一个人的姓名一样就认为他们equal,能现场写下我们怎么重写equals吗?如果两个对象,一个是cat,一个是dog,我们认为他们的name属性一样就一样,怎么重写equals18、还有点时间,写个题吧leetcode406.根据身高重建队列假设有打乱顺序的一群人站成一个队列。每个人由一个整数对(h, k)表示,其中h是这个人的身高,k是排在这个人前面且身高大于或等于h的人数。 编写一个算法来重建这个队列。注意:总人数少于1100人。示例输入:[[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]输出:[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]
点赞 评论 收藏
分享
评论
2
13
分享

创作者周榜

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