工作10年,面试超过300人想进阿里的同学,总结出的java面试69题( 四 )

系统架构

1.如何搭建一个高可用系统

2.哪些设计模式可以增加系统的可扩展性

3.介绍设计模式 , 如模板模式 , 命令模式 , 策略模式 , 适配器模式、桥接模式、装饰模式 , 观察者模式 , 状态模式 , 访问者模式 。

4.抽象能力 , 怎么提高研发效率 。

5.什么是高内聚低耦合 , 请举例子如何实现

6.什么情况用接口 , 什么情况用消息

7.如果AB两个系统互相依赖 , 如何解除依赖

8.如何写一篇设计文档 , 目录是什么

9.什么场景应该拆分系统 , 什么场景应该合并系统

10.系统和模块的区别 , 分别在什么场景下使用

分布式系统

1.分布式事务 , 两阶段提交 。

2.如何实现分布式锁

推荐阅读