架构师能力

double

这是一个面试也会常问的问题,想了想主要还是以一下几点作为考虑。

技术选择

  • 要切合业务:能否实现现有的功能,能否预估到后续的功能和现有技术的一个贴合度能否完全的匹配,如果不能满足的情况下就需要好好斟酌下。
  • 社区活跃度:活跃度高表示关注的人多,更能体现出好与不好的地方
  • 团队技术水平
  • 版本更新的迭代周期:如果版本迭代停更了,遇到问题会得到解决
  • 试错精神:在项目之外多用前沿技术,多去试验及验证其中的好与坏,这样的话我们在真正项目会有很多备选方案
  • 安全性: 查看是否有出现过重大安全事项
  • 成功案例:行业内是否已有公司使用,行业人是否推荐的
  • 开源精神:要考虑选的技术是否会闭源的情况

项目拆分与聚合能力

分布式架构优点

  • 业务解耦
  • 系统模块化,可重用化
  • 提升系统并发量
  • 优化运维部署效率

分布式架构缺点

  • 架构变得复杂了
  • 部署多个子系统复杂
  • 系统之间通信耗时
  • 新人融入团队缓慢
  • 调试变得复杂

分布式设计原则

  • 异步解耦
  • 幕等一致性
  • 拆分原则
  • 融合分布式中间件
  • 容错高可用