概念解析:

  1. 高可用HA(High Availability)是分布式系统架构中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间
    假设系统一直能够提供服务,那么该系统的可用性是100%。如果系统每运行100个时间单位,会有1个时间单位无法提供服务,那么该系统的可用性是99%。
  2. 高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。高并发相关常用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。

如何实现:

  1. 高可用HA的实现。方法论上,高可用保证的原则是“集群化”,或者叫“冗余”:只有一个单点,挂了服务会受影响;如果有冗余备份,挂了还有其他backup能够顶上。有了冗余之后,还不够,每次出现故障需要人工接入恢复势必会增加系统的不可服务时间。所以,有往往是通过“自动故障转移”来实现系统的高可用
    总结:通过冗余+自动故障转移来保证系统的高可用特性。
  2. 高并发的实现。互联网分布式架构设计,提高系统并发能力的方式,方法论上主要有两种:垂直扩展(Scale Up)与水平扩展(Scale Out)
    垂直扩展:提高单机处理能。垂直扩展的方式有两种:
    (1)增强单机硬件性能。例如:增加CPU核数如32核,网卡如万兆,硬盘如SSD,内存等。
    (2)提升单机架构性能。例如:使用Cache来减少IO次数,使用异步来增加单服务吞吐量,使用无锁数据结构来减少响应时间;
    水平扩展:只是增加服务器数量,就能线性扩充系统性能。水平扩展对系统架构设计是有要求的,如何在架构各层进行可水平扩展的设计,以及互联网公司架构各层常见的水平扩展实践,详细见参考文献【2】。

参考文献:

  1. 究竟啥才是互联网架构“高可用”
  2. 究竟啥才是互联网架构“高并发”
posted on 2017-05-19 11:09  jade640  阅读(4776)  评论(0编辑  收藏  举报