《架构即未来》阅读笔记3
8.无状态系统
只有当业务确实需要的时候,才使用状态。
无状态的系统更利于扩展,更利于做负载均衡。
9.水平扩展非垂直升级
永远不要依赖更大、更快的系统。
微服务是水平扩展的一个例子,不要把所有的功能都集中在一个系统里面。必要的时候把需求分为多个系统,而不是升级原有的系统。
10.设计至少有两个步骤的前瞻性
在扩展性问题发生前考虑好下一步的行动计划。
想的更远一点,就能减少重构的次数。
11.非核心则购买
如果不是你最擅长的,也提供不了差异化的竞争优势则直接购买。
云服务这种的就购买好了。
12.使用商品化硬件
在大多数情况下,便宜的是最好的。
硬件这块儿,满足需求即可,在必要的时候增加配置。
13.小构建,小发布,快试错
全部研发要小构建,不断迭代,让系统不断地成长。
小版本的失败率较低,因为失败率与解决方案中的变更数量直接相关。
14.隔离故障
实现隔离故障设计,通过断路保护避免故障传播和交叉影响。
避免多系统之间的互相影响,这个很重要。
15.自动化
设计和构建自动化的过程。如果机器可以做,就不要依赖于人。
人常犯错误,更令人沮丧的是,他们往往会以不同的方式多次犯同样的错误。