分布式系统非常关注三个指标:

  • 数据一致性
  • 系统可用性
  • 节点连通性与扩展性

关于一致性

数据“强一致性”,是希望系统只读到最新写入的数据,例如:通过单点串行化的方式,就能够达到这个效果。

关于session一致性,DB主从一致性,DB双主一致性,DB与Cache一致性,数据冗余一致性,消息时序一致性,分布式事务一致性,库存扣减一致性,详见文章《究竟啥才是互联网架构“一致性”》。

关于可用性

如果系统每运行100个时间单位,会有1个时间单位无法提供服务,则说系统的可用性是99%。

可用性和可靠性是比较容易搞混的两个指标,以一台取款机为例:

  • 正确的输入,能够取到正确的钱,表示系统可靠
  • 取款机7*24小时提供服务,表示系统可用

保证系统高可用的方法是:

  • 冗余
  • 故障自动转移

反向代理层,站点层,服务层,缓存层,数据库层各层保证系统高可用的方法,详见文章《究竟啥才是互联网

收藏 打印