高可用、高并发浅析
概念解析:
高可用HA(High Availability)是分布式系统架构中必须考虑的因素之一,它一般是指,经过设计减小系统不能提供服务的时间 。 假设系统一直可以提供服务,那么该系统的可用性是100%。若是系统每运行100个时间单位,会有1个时间单位没法提供服务,那么该系统的可用性是99%。
高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它一般是指,经过设计保证系统可以同时并行处理不少请求 。高并发相关经常使用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。
如何实现:
高可用HA的实现。方法论上,高可用保证的原则是“集群化”,或者叫“冗余”: 只有一个单点,挂了服务会受影响;若是有冗余备份,挂了还有其余backup可以顶上。有了冗余以后,还不够,每次出现故障须要人工接入恢复势必会增长系统的不可服务时间。因此,有每每是经过“自动故障转移”来实现系统的高可用 。 总结:经过冗余+自动故障转移 来保证系统的高可用特性。
高并发的实现。互联网分布式架构设计,提升系统并发能力的方式,方法论上主要有两种:垂直扩展(Scale Up)与水平扩展(Scale Out) 。垂直扩展 :提升单机处理能。垂直扩展的方式有两种: (1)加强单机硬件性能。例如:增长CPU核数如32核,网卡如万兆,硬盘如SSD,内存等。 (2)提高单机架构性能。例如:使用Cache来减小IO次数,使用异步来增长单服务吞吐量,使用无锁数据结构来减小响应时间;水平扩展 :只是增长服务器数量,就能线性扩充系统性能。水平扩展对系统架构设计是有要求的,如何在架构各层进行可水平扩展的设计,以及互联网公司架构各层常见的水平扩展实践,详细见参考文献【2】。
参考文献:
究竟啥才是互联网架构“高可用”
究竟啥才是互联网架构“高并发”
欢迎关注本站公众号,获取更多信息