阿里巴巴研发工程师(三面)面经
- 面试官首先问我对基础设施研发、平台研发和业务应用类研发这三类方向中,哪一个更感兴趣。
- 接着,他让我分享一个在项目中成就感或难度较大的案例,并详细描述我负责的部分是如何实现的。
- 为什么选择使用RabbitMQ?
- 消息丢失是如何产生的?(这个问题我没能回答上来)
- 在项目中,哪个环节让你觉得最有挑战性?
- 除了这个项目外,有没有其他技术挑战较大的经历可以分享?
- 你对分布式事务有了解吗?(我没有相关经验)
- 你深入学习过哪些开源框架或工具?(我选择了Redis)
- 你如何理解IO的同步、异步、阻塞和非阻塞?
- 请讲讲Redis和MySQL如何保持数据一致性。
- Redis的过期机制和删除机制是什么?
- Redis如何实现分布式锁?如何解锁?(解锁部分我忘记了)
- 你如何理解Redis和MySQL的事务?能举个应用的例子吗?
- 你对Spring了解多少?有没有看过源码?讲讲让你印象深刻的部分。
- Spring事务的传播级别有哪些?(这个问题我不太清楚)
- 为什么要使用Spring框架?
- 你看过JDK的源码吗?
- 你了解G1、ZGC这些新出的垃圾回收器吗?
- 你知道GC为什么要设计成分代的吗?
- 你了解各种引用类型吗?(这个问题我准备得不够充分)
- 你对设计模式了解吗?能举例说明你在实际项目中是如何应用的?
- 你写过一些有意思的项目吗?
面试官在过程中多次提醒我“会的就答,不会的就不要浪费时间”,紧张死我了
#软件开发笔面经##牛客创作赏金赛#