认知能力:
架构设计认知、分析问题认知、能力边界认知
设计认知:
立足于点、连接成线、扩散成面
底层逻辑:
为什么要做拆分?
为什么要做系统解耦?
为什么要职责单一?
为什么要关注开发效率?
分析问题认知:
业务:关注点系统能力
管理者:关注点在人效管理
技术:系统设计原则
架构师与中高级研发区别
中高级研发 | 架构师 | |
复杂度评估
功能性复杂度:研发团队能力素质、it成本、资源投入周期
非功能性复杂度:
高性能
高可用
扩展性
安全性
低成本
消息管道实现方式:
1:采用开源的mq中间件 kafka rabbitmq activemq robbitmq等
2:采用开源的redis实现消息队列
3:采用内存队列+mysql来实现
高可用三个设计原则
1:系统无单点
2:可水平拓展
3:可降级: 常用手段有三: 限流、降级、熔断
基于redis实现消息队列方案:
1:redis list lpush rpop
2:redis的订阅与发布
3:redis的有序集合
全局思考问题
空间全局
时间全局