1 高性能
单机:
cpu 操作系统 多进程 多线程
集群:
任务分配
任务分解
总结一下所得,性能复杂度主要体现在单台计算机和多台计算机集群两方面。单机复杂度主要考虑多进程、多线程、进程间通信、多线程并发等技术点。集群主要考虑任务分配和任务分解,并且要把握好粒度,逼近性能极限。
2 高可能
系统的高可用方案五花八门,但万变不离其宗,本质上都是通过“冗余”来实现高可用
计算高可用
存储高可用呢
高可用状态决策
通俗来讲,高性能是土豪,有钱可以任性;高可用是文豪,需要日积月累修炼
3 可扩展
设计具备良好可扩展性的系统,有两个基本条件:正确预测变化、完美封装变化。
设计模式的核心就是,封装变化,隔离可变性
4 成本、安全、规模
往往只有“创新”才能达到低成本目标