蚂蚁-全球技术2022春招实习一面(凉经)

3.16已投 3.16测评 3.25日(星期五)9:00-11:00笔试
蚂蚁集团-支付宝事业线-商家开放技术 3.23 电话一面(过) 4.2约二面(拒绝)

蚂蚁集团-支付宝事业线-数字行业事业部 4.7约一面(拒绝)

蚂蚁集团-国际事业群-全球技术 4.12约一面 4.13 19:00 4.14挂(70分钟终极kpi面)

1.自我介绍

2.复盘笔试两道题,第一题过,谈到了Set?

3.你知道的Java集合中有哪些Set?(HashSet,SortedSet)HashSet底层原理是什么?SortedSet原理呢?

4.HashMap和HashTable和ConcurrentHashMap?

5.为什么会弃用HashTable而改用ConcurrentHashMap,主要体现在哪里?

6.HashMap是怎么进行扩容的?

7.谈到HashMap在JDK1.8之后的变化。为什么要使用红黑树?红黑树的结构是什么样的?

8.HashMap在进行扩容之后红黑树内部会进行调整吗?红黑树和平衡二叉树有什么异同?

9.回到笔试第二题,有五个数,每次找其中四个数-1,直到不满足同时有四个数可以减为止,问一共需要多少次?笔试完没有再研究?

10.简述一个项目和主要在里面负责的部分?

11.项目中用到的数据库是什么?数据库的引擎是什么?

12.InnoDB中的索引结构是什么?B+树和B树有什么区别?B+树做索引的好处?

13.那聚簇索引和非聚簇索引有什么区别?非聚簇索引是怎么走的?它存的是什么?

14.数据库的事物?ACID?

15.持久性是怎么保证的?(内存+redo log)

16.说一下redo log,undo log,binlog

17.事物的隔离级别?RU和RC区别,解决了什么问题?RC和RR区别,解决了什么问题?

18.项目中数据库用到的什么隔离级别?那传播行为呢?

19.了解线程池吗?线程池有什么参数?

20.synchronized和volatile的区别?

21.Java的static方法用synchronized和实例方法用synchronized有什么区别?

21.1 现在用synchronized给一个静态代码块加锁,同时用两个线程去访问,会互斥吗?

21.2 用synchronized给一个对象中的非静态方法加锁,每次调用完Thread.sleep 五秒,会互斥吗?

1.Java的static方法用synchronized和实例方法用synchronized有什么区别?

Synchronized修饰非静态方法,实际上是对调用该方法的对象加锁,俗称“对象锁”。

1-1 同一个对象在两个线程中分别访问该对象的两个同步方法,互斥

因为锁针对的是对象,当对象调用一个synchronized方法时,其他同步方法需要等待其执行结束并释放锁后才能执行。

1-2 不同对象在两个线程中调用同一个同步方法,不会互斥

因为是两个对象,就相当于两个大房子,彼此之间互不干扰,具有两把钥匙。锁针对的是对象,并不是方法,所以可以并发执行,不会互斥。形象的来说就是因为我们每个线程在调用方法的时候都是new 一个对象,那么就会出现两个空间,两把钥匙。

Synchronized修饰静态方法,实际上是对该类对象加锁,俗称“类锁”。

2-1 用类直接在两个线程中调用两个不同的同步方法,互斥

因为对静态对象加锁实际上对类(.class)加锁,类对象只有一个,可以理解为任何时候都只有一个空间,里面有N个房间,一把锁,因此房间(同步方法)之间一定是互斥的。

2.同一个对象在两个线程调用synchronized修饰的static方法和用synchronized实例方***阻塞吗?

不会,因为锁的对象是不一样的,一个锁的类对象,一个是实例对象。

22.本科和研究生期间战胜过的最困难的事情是什么?

23.本科和研究生期间最有成就感的事情是什么?

24.本科和研究生期间获得过什么奖项,论文,专利?

反问:

1.目前拿到了招银的offer,请您从过来人的角度分析一下银行和大厂的优劣?
2.跨境支付的主要技术和普通业务有什么不同?
#面经##java##实习##蚂蚁##阿里面试#
全部评论
感觉进大厂都好难
1 回复 分享
发布于 2022-08-04 10:59

相关推荐

05-06 15:29
东华大学 C++
1. ​分布式订单ID生成? 短时间高并发下如何保证唯一性?我先回答了雪花-like, 上段实习中, 我们项目的全局GUID生成器是我写的, 考虑了短时间内大量产生的情况, 向后借用, 未考虑时钟回拨然后想起来当时和leader讨论,  单独的GUID生成中心, 分批向各个ds批发号段.. 或者是用tacplus的自增id, 但是这样效率太低2. ​CPU 性能瓶颈分析使用 prof 工具监视热点函数的性能消耗3. 上段实习工作内容? 难点?    背包/仓库/道具 ​重构模块追问​:    在两周内重构1万行代码,如何保证代码质量?是否引入单元测试或自动化验证?    10天完成15天任务,如何协调开发与测试资源?是否牺牲技术债?4. 问了一点网络: 网络通信与实时系统视频会议与代码共享的链路设计追问​:解释从你的设备到面试官屏幕的完整网络路径(如NAT穿透、协议选择)5. 游戏服务器同步机制? 和互联网开发的区别服务器作为权威状态源,定期向客户端广播游戏世界的完整或增量状态(如玩家位置、血量)电商无状态服务可通过REST API+RPC横向扩展,而游戏服务器需维护长连接和会话状态。6. 系统设计 分布式事务与最终一致性​游戏道具交易涉及多个系统(背包、仓库、邮件),如何设计分布式事务?对比电商订单支付+库存扣减。​回答方向​:​Saga模式​:将事务拆分为多个可补偿步骤(如“扣道具-发邮件-记录日志”,失败则回滚)。对比:电商更倾向异步消息队列​(如Kafka)实现最终一致性。7. 游戏服务器宕机后如何快速恢复玩家状态?电商系统如何设计类似容灾机制?定时落DB+游戏整体运行在共享内存, 方便resume7. 游戏后端请求链路分析采用自定义的可靠UDP协议​(KCP),平衡延迟与可靠性. 玩家操作(如移动、技能释放)需携带时间戳和操作序列号,用于服务端验证顺序, 请求直达, 客户端直接和服务器感觉面试内容很不"八股", 答得稀里糊涂的, 上面的顺序不是面试提问顺序, 想起来什么说什么, 大家做个参考
查看11道真题和解析
点赞 评论 收藏
分享
评论
4
27
分享

创作者周榜

更多
牛客网
牛客企业服务