云杉 一面

#发面经攒人品#📍面试公司:云杉  
🕐面试时间:一面  
💻面试岗位:Java 后端实习生  
❓面试问题:  
1. Java 中 HashMap 的数据结构是怎么样的?JDK8 后有什么优化?  
2. 你知道 Java 内存模型(JMM)吗?volatile 和 synchronized 有什么区别?  
3. 给你一个日志文件,里面有大量用户访问记录,写个算法找出访问次数排名前三的用户  
4. 简述一下你理解的分布式锁,Redis 实现分布式锁的原理和可能的风险是什么?  
5. 数据库事务的隔离级别有哪几种?它们分别解决了哪些问题?  
6. Kafka 的消息是怎么保证顺序消费的?如果消费者挂了,消息会丢失吗?  
7. JVM 调优中,你遇到过什么问题?比如内存泄漏、频繁 Full GC,你怎么定位?  
8. 讲讲你项目中用过的缓存策略,有没有遇到缓存不一致的情况?怎么解决的?  
9. 什么是幂等性?举个你项目中用到幂等设计的例子  
10. 你对微服务架构了解多少?服务之间如何通信?你项目里用过哪些技术栈?  

🙌面试感想:  
侧重考察你对 Java 核心机制的理解,还有对分布式系统和中间件的认知。
全部评论

相关推荐

09-12 11:46
已编辑
门头沟学院 Java
面试官人很好,这是我见过最会引导的面试官了心态崩了,记几个答得不好的,全程1h10min1、狠狠拷打实习,问有什么难点,如果让你继续优化你的实习工作,你还能做哪些优化。主要是笨人的实习真的挺杂活的, 真想不到有什么难点和可以优化的地方。2、手撕一个分布事锁工具类,支持加锁和释放锁,要可重入,涉及redis或zk的api可以伪代码,在面试官的循序引导下勉强写完了,但是后来面试官又问如何让一个工具类同时支持redis和zk的加锁和释放锁,写不出来,只说了应该需要工厂模式和spi支持。。。3、事务是怎么实现的,具体一点,只知道aop,但是还不够具体4、面试官手写了一个类,问事务生不生效,类似下面这样,记不清了,回答了不生效,问为什么,怎么解决,我说方法A加个@Transactional,面试官继续问,如果不加注解,自己@Autowired注入自己AccountService 可以生效吗?而且这样算循环依赖吗?public class AccountService {@Autowiredprivate Dao accountDao;@Transactionalpublic void B {...}public void A {B()...}5、Redis为什么这么高效?redis单线程模型为什么能高效处理多个请求?这个事务能生效吗?6、什么叫循环依赖,如何解决?为什么是三级缓存而不是二级?7、手撕:二叉树最近公共祖先,继续,如果是二叉搜索树呢?总结:这次暴露的问题太多了,很多八股只停留在表面,比如@Transactional如何实现事务的,只知道基于 aop,但是 app 干了啥保证事务就不知道了,为什么是三级缓存而不是二级,对于实习没有很好的总结,不知道难点在哪,应该是挂了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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