深圳航天工业技术研究院Java社招开发工程师(一面)

以前面试都是挑着面各个知识点,东问一句,西问一句,基本没有什么知识点的深究和连贯……
有可能这个问题是Java集合,多线程并发等基本概念的理解,下个问题是数据库或者马上跳转到技术框架原理……
-----总之就是随机“闲聊”嘛。

在这家国企与众不同了,面试官会“深究”一个点在开发中出现的种种问题,种种对应的解决方案,来深究探讨。。。。。


以下的仅仅是记忆中的当时的“思路简短回忆”,和实际面试“闲聊”肯定有些差距,有些不清楚的也和面试官交流过一些……
毕竟面试是相互之间的交流来相互了解。

个人对那种“一问一答”型的面试很反感,发现有好多人(特别是应届生)都不知不觉地在面试官面前“矮了三分”,心里没想过是双向选择,非要以一种“祈求糊口”的心态来面试……

  1. 项目中你用过消息队列,为什么要用消息队列呢?-----------说白了就是业务场景,顺便考察了面试者的开发项目经验。
  2. 如果项目中用了消息队列,会有哪些优点和缺点呢?(结合自己的实际项目把不用消息队列时的耦合扩展成本太高、同步时效太长、并发造成的请求压力……详细介绍下,主要还是项目中的实践)会有哪些项目中遇到的坑,如何避免这些坑?(MQ属于第三方的一个产品,引入系统中当然会增加业务逻辑对该产品的依赖,而且提防这个MQ产品挂掉,提防MQ重复发送,丢失消息,或者由于内部某个线程延时导致消息顺序紊乱,)
  3. 你接触的消息队列产品有哪些?它们有什么异同之处?---------RocketMQ、RabbitMQ、activeMQ、kafka……这应该是有不同的吞吐量,说实话不清楚它们具体的异同,我只用过一种。。。。。自己有兴趣自己查吧
  4. 如何保证消息队列的高可用?------聊集群相关的应用场景,本来消息队列就是为了大规模数据请求引入的一个第三方产品,单机版的岂不是画蛇添足?
  5. 消息队列重复消费情况------对于kafka会有一个消息编号,专业术语offset。消费者按照编号顺序消费队列,并且定时上交消费记录,如果出现消费者宕机则重启以后依照offset编号继续。如果消息队列的offset没有提交消费者已经消费的消息,那么消费者重启后就产生重复消费。
  6. 如何保证消息队列的幂等性---------前面挖的坑,既然有了重复消息,那就得去重解决呀。把接收到的消息先查询一下已写入的库,如果不存在那就消费。相当于在数据库写入之前做一个查询验证。
  7. 消息队列丢失消息的可能性------------生产者弄丢了(消息MQ开启事务监控MQ是否受到消息但由于同步阻塞原因性能比较低,还有一种属于异步回调机制效率比较高……)、MQ宕机弄丢了(消息队列开启的持久化……创建持久化和发送时的设置持久化缺一不可),消费者消费时弄丢(消息队列的ack机制……)。
  8. 消息队列的顺序性如何保证?
  9. 消息队列的延时以及过期失效?
  10. 消息队列存满了,而有上百万的消息持续积压问题------硬件扩容,多加几台机器消费消息。
  11. 如何设计一个消息队列架构呢?说说你的看法?---------把消息队列就看作一个假设在数据库和客户端请求中间的一个中间件,这个中间件接受来自成千上万的客户端请求,然后将请求落地到数据库中。而且实现这个消息队列架构要考虑扩展(加物理机分布式架构),安全(顺序和丢失问题,那就为队列消息编号)……

总结:总体来说面试官的知识深度非常优秀,估计知识面广度也很优秀,表面上是面试一个知识点“消息队列”,实际上穿插考察了实际开发场景中遇到的各种各样的坑问题,这就是典型的“牵一发而动全身”式的考察。

#社招##Java工程师##面经#
全部评论
感谢分享社招面经! 活动:社招面经征集|参加过社招的牛友,来发面经吧,拿京东卡~
点赞 回复 分享
发布于 2019-10-17 18:01
点赞 回复 分享
发布于 2019-10-18 00:12
点赞 回复 分享
发布于 2019-10-18 11:11
楼主是互联网跳槽研究院吗😂
点赞 回复 分享
发布于 2019-11-01 09:54

相关推荐

02-11 17:51
腾讯_TEG_技术
点赞 评论 收藏
分享
hanliu:1. 排版与格式问题字体与对齐问题:标题和内容的字体大小差异不够明显,无法迅速吸引目光。某些文字看起来有些拥挤(比如校园经历中的“班委成员”部分)。2. 内容逻辑性模块顺序问题:实习经历放在较靠后的位置,实际上这部分内容对应聘来说更重要,建议提前突出。细节表述不够突出:比如教育背景部分的专业课程仅仅列出名字,没有说明自己在这些课程中表现如何或者掌握了什么技能,缺乏量化描述。多余内容:例如“班委成员”和“宣传委员”这类校园经历,叙述过于普通,缺乏和岗位相关的实质性贡献。,建议简写。3. 措辞专业性表达不够精准:例如“协助班长与团支书更好地为同学服务”显得较为笼统,没有实际成果的体现。用词重复:如“学习了焊接”“学习了光检”等重复词语较多,缺乏丰富的动词来展示个人能力(如“负责”“优化”“改进”等)。技能展示不足:虽然列出了UG和CAD证书,但没有明确提到这些技能如何在实际工作中发挥作用。4. 技能匹配度技能深度不足:虽然列出了掌握的软件和技术,但没有描述技能水平(如“熟练掌握”“精通”),也没有具体案例支持这些技能。缺乏岗位导向性:比如针对机械设计与制造方向,实习经历提到了“E6尾灯项目”,但没有详细说明自己在其中的技术贡献,可能会显得经验描述泛泛而谈。5. 自我评价问题表达空泛:如“具有良好的沟通协调能力”“责任心强”之类的描述太常见,没有让人眼前一亮的特点。缺乏成果支持:自我评价中的能力没有用具体项目、经历或成就来验证,可信度较弱。 兄弟加油
点赞 评论 收藏
分享
一天代码十万三:实习东西太少了,而且体现不出你业务,3个月不可能就这点产出吧,建议实习多写点,玩具项目面试官都不感兴趣的
点赞 评论 收藏
分享
评论
7
14
分享

创作者周榜

更多
牛客网
牛客企业服务