蚂蚁金服Java后端开发工程师一面面经

问题涉及技术架构、消息队列、Spring框架等多个方面

  1. 技术架构,以及为什么要这样设计
  2. MQ是怎么保证不重复消费,可靠性投递,本身是怎么保证可用性的
  3. Spring Cloud以及外部都有提供动态线程池,为什么还要自己写一套
  4. Spring IOC的理解,底层的实现机制,用了什么设计模式
  5. AOP的底层实现机制
  6. 动态代理和静态代理的区别,动态代理的实现方式,以及两种实现方式的区别
  7. 用过哪些设计模式
  8. 单例有哪些类型,单例的eager,lazy
  9. 静态内部类各自优缺点
  10. synchronized底层是怎么实现的
  11. 项目里是怎么应用的,MySQL索引结构是什么,慢SQL怎么排查
  12. 了解过哪些分布式的设计理念,各自有什么区别
  13. 两个用户同时读一个数据,用户1读到了老的数据,用户2读到了新的数据,该怎么保证用户1的一致性
  14. 分布式锁的场景
  15. 实现分布式锁有哪些方式以及优缺点

#软件开发笔面经##牛客创作赏金赛#
全部评论
佬电话面之前会给邮件通知时间吗
点赞 回复 分享
发布于 2024-08-30 02:08 湖北
分布式的设计理念:这个怎么回答呀? 设计分布式系统的理念主要包括以下几点: 任务分解:将大型任务分解为多个小任务,并在多台服务器上同时执行这些小任务。通过任务分解,分布式系统能够充分利用多台服务器的计算能力,提高整体性能。 数据一致性:在分布式系统中,保持数据一致性是一个关键问题。为了解决这一问题,分布式系统采用各种数据同步和事务处理机制,以确保数据在多个节点之间保持一致。 负载均衡:负载均衡是分布式系统的核心设计理念之一。通过合理分配任务到各个服务器节点上,负载均衡可以有效地提高系统的吞吐量和响应速度。负载均衡器通常作为分布式系统的入口点,负责将客户端请求分发到不同的服务器节点上。 容错和恢复:在分布式系统中,容错和恢复机制至关重要。由于网络通信和节点故障是不可避免的,因此设计时必须考虑如何快速检测和恢复故障节点,以保证整体服务的稳定性。常见的容错和恢复技术包括数据备份、故障转移和请求重试等。 透明性:设计分布式系统时追求透明性原则,即尽量减少用户对底层细节的关注。通过提供统一的接口和抽象层,分布式系统隐藏了实现细节,使得用户在使用时无需关心服务器的具***置、数据存储方式等细节问题。透明性有助于提高用户体验和降低维护成本。 可伸缩性:随着企业业务的不断增长,分布式系统需要具备良好的可伸缩性来适应需求的变化。通过设计可扩展的架构和模块化组件,分布式系统能够在不影响现有业务的前提下灵活地增加或减少服务器资源,以满足不断增长的计算需求。 总之,分布式系统的特点和设计理念充分体现了其高效、稳定、可扩展的优势。通过合理地运用分布式系统,企业能够更好地应对不断变化的市场需求和技术挑战,提升自身的竞争力。
点赞 回复 分享
发布于 2024-08-13 17:51 新加坡

相关推荐

昨天 07:38
已编辑
门头沟学院 Java
2.4 一面2.6 二面2.9 三面(hr面)2.13 oc1.15号收到面试电话那会就开始准备,因为一开始没底所以选择推迟一段时间面试,之后开始准备八股,准备实习可能会问的东西,这期间hot100过了有六七遍,真的是做吐了快,八股也是背了忘,忘了背,面经也看了很多,虽然最后用上的只有几道题,可是谁知道会问什么呢自从大二上开始学java以来,一路走来真的太痛了,一开始做外卖,点评,学微服务,大二下五六月时,开始投简历,哎,投了一千份了无音讯,开始怀疑自己(虽然能力确实很一般),后来去到一家小小厂,但是并不能学到什么东西,而且很多东西都很不规范,没待多久便离开,大二暑假基本上摆烂很怀疑自己,大三上因为某些原因开始继续学,期间也受到一俩个中小厂的offer,不过学校不知道为啥又不允许中小厂实习只允许大厂加上待遇不太好所以也没去,感觉自己后端能力很一般,于是便打算转战测开,学习了一些比较简单的测试理论(没有很深入的学),然后十二月又开始继续投,java和测开都投,不过好像并没有几个面试,有点打击不过并没有放弃心里还是想争一口气,一月初因为学校事比较多加上考试便有几天没有继续投,10号放假后便继续,想着放假应该很多人辞职可能机会大一点,直到接到字节的面试,心里挺激动的,总算有大厂面试了,虽然很开心,但同时压力也很大,心里真的很想很想很想进,一面前几天晚上都睡不好觉,基本上都是二三点睡六七点醒了,好在幸运终于眷顾我一次了(可能是之前太痛了),一面三十几分钟结束,问的都不太难,而且面试官人挺好但是有些问题问的很刁钻问到了测试的一些思想并不是理论,我不太了解这方面,但是也会给我讲一讲他的理解,但是面完很伤心觉得自己要挂了。但是幸运的是一面过了(感谢面试官),两天后二面,问的同样不算难,手撕也比较简单,但也有一两个没答出来,面试官人很好并没有追问,因为是周五进行的二面,没有立即出结果,等到周一才通知到过了,很煎熬的两天,根本睡不好,好在下周一终于通知二面过了(感谢面试官),然后约第二天三面,听别的字节同学说hr面基本上是谈薪资了,但是我的并不是,hr还问了业务相关的问题,不过问的比较浅,hr还问我好像比较紧张,而且hr明确说了还要比较一下,我说我有几家的面试都拒了就在等字节的面试(当然紧张,紧张到爆了要),三面完后就开始等结果,这几天干啥都没什么劲,等的好煎熬,终于13号下午接到了电话通知oc了,正式邮件也同时发了,接到以后真的不敢信,很激动但更重要的是可以松一口气了,可以安心的休息一下了终于可以带着个好消息过年了,找实习也可以稍微告一段落了,虽然本人很菜,但是感谢字节收留,成为忠诚的节孝子了因为问的比较简单,面经就挑几个记得的写一下一面:1.实习项目的难点说一下2.针对抖音评论设计一下测试用例3.手撕:合并两个有序数组二面:1.为什么转测开2.线程进程区别,什么场景适合用哪个3.发送一个朋友圈,从发出到别人看到,从数据流转的角度说一下会经历哪些过程4.针对抖音刷到广告视频设计测试用例5.手撕:无重复字符的最长字串
查看8道真题和解析
点赞 评论 收藏
分享
评论
5
17
分享

创作者周榜

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