肖楠

(资深)架构师基本技能

通用部分

安全设计

  • 重要程度:★★★★★
  • 学习难易:★★★★★
  • 适合人员:所有

系统安全性设计原则,了解至少三点,要求至少有一项设计实践:

1、保护最薄弱环节(系统最薄弱部分就是最易受攻击影响的部分);

2、纵深防御(采取一系列防御,以便在一层防御不能抓住错误时,另一层防御将可能抓住它。);

3、故障保护;

4、最小特权(只授予执行操作所必需的最少访问权,并且对于该访问权只准许使用所需的最少时间);

5、分隔原则(将系统分成尽可能多的独立单元,可以将对系统可能造成损害的量降到最低。)。

性能设计

  • 重要程度:★★★★★
  • 学习难易:★★★★★
  • 适合人员:所有

解决性能应该从哪些方面入手,了解4点,并能列举具体的优化技术,要求至少应用过其中的两种方法:

1、缓存及缓存层;

2、采用多线程;

3、实施负载平衡;

4、对数据库进行优化;

5、文件系统优化;

6、代码性能优化;

7、应用层功能改造(分页、运算分离、惰性加载)

算法设计

  • 重要程度:★★★★★
  • 学习难易:★★★★★
  • 适合人员:所有

1、至少实现过一项较为复杂的算法设计(要求有文档);

2、掌握至少两项常见的但有一定复杂度的计算机算法原理,如Hash算法、快速排序、DES算法、MD5算法等等。

架构设计

  • 重要程度:★★★★★
  • 学习难易:★★★★
  • 适合人员:所有

1、掌握基本的架构设计理论:了解“4+1视图”模型(能列述),了解常见架构视力类型(要能按照“消费者、视角、元素、关系”四要素对具体架构视图进行说明);

2、掌握架构的分层观点(三层设计);

3、安全设计、性能设计、算法设计中具备2项;

4、了解架构师的职责(a、理解系统的业务需求,制定系统的整体框架(包括:技术框架和业务框架) b、对系统框架相关技术和业务进行培训,指导开发人员开发。并解决系统开发、运行中出现的各种问题。);