- 性能可扩展:性能无法完全实现线性扩展,但要尽量使用具有并发性和异步性的组件。具备完成通知功能的工作队列要优于同步连接到数据库。
- 可用性可扩展:CAP 理论表明,分布式系统无法同时提供一致性、可用性和分区容错性保证。许多大规模 Web 应用程序都为了可用性和分区容错性而牺牲了强一致性,而后者则有赖于最终一致性来保证。
- 维护可扩展:软件和服务器都需要维护。在使用平台 & 工具监控和更新应用程序时,要尽可能地自动化。
- 成本可扩展:总拥有成本包括开发、维护和运营支出。在设计一个系统时,要在重用现有组件和完全新开发组件之间进行权衡。现有组件很少能完全满足需求,但修改现有组件的成本还是可能低于开发一个完全不同的方案。另外,使用符合行业标准的技术使组织更容易聘到专家,而发布独有的开源方案则可能帮助组织从社区中挖掘人才。
维护、成本很重要的,但往往重视的不够,很多公司很多项目都是先不计代价的落地,在等项目真的落地后再花更多的时间去填原来因为偷懒留下来的坑。