HA概念本身平淡无奇, HA者, High Availability的简称嘛!不过, 或许真的是自身愚笨, HA, HA的听多了, 还真没把它当回事。 很多年之后才真正“吃”出点儿味儿来。
我得说, 大家通常挂在嘴边的HA应该属于狭义概念上的HA, 它通常指代某种Active+Standby的Pair Service, 最长见的当然就是数据库的主备结构。反正大家天天这么招呼, 在狭义的HA层面上也能达成一定的共识, 不过, HA概念本身其实简单背后蕴含着更多的玄机。
从更广义的角度来说, HA就是HA(这可能听着有点儿绕), 为了让我们的系统可以高可用(High Availability), 我们有许多手段或者说方式来达成这个目的, 而我们常常挂在嘴边的HA, 实际上只是其中的一个手段或者几个手段的代称而已。
为了保证系统的高可用, 我们有许多种手段和方式, 下面是几种较为常见的手段和方式(不限于):
-
复制与备份(Replication And Backup). 这主要是从存储的角度保证状态的可用性, 比如采用RAID(冗余磁盘阵列)通过冗余的数据备份存储保证数据的高可用性; 比如, 异地数据中心之间的数据备份与灾难恢复; 又比如当下KV engine实现中采用的 R+W > N 的原则等都可以属于这个范畴。
-
Failover. 为了保证系统的高可用性, 我们还可以引入Failover机制, 比如应用程序运行期间的hot swap, 或者Virtual IP之间的切换等,都属于Failover的范畴。
-
Cluster. 集群也是通过冗余来保证系统的高可用性, 只不过, 它侧重的是服务的冗余, 而不是状态的冗余(虽然也包含)。 集群内部可以存在交互,也可以不存在交互, 存在交互的集群内部各个结点通常是不对等的, 而不存在交互的集群内部各个结点通常则是对等的。 集群内部的交互, 简单的机制当然是Heart Beat, 复杂的机制可能有组播, 广播等。总之就是, 挂了我一个, 还有后来人, 预备役多着那。
-
Load balance. 负载均衡扔这里可能会感觉牵强附会,不过, 从其所起的作用来看, 把它看作保证系统高可用的一种手段也不为过。负载均衡可以减轻单一或者多个结点的负载压力, 将整体负载均衡的分配到多个结点上去,你想啊, 如果没有负载均衡, 将整个的负载都压到一个结点上去, 那这个结点不废废才怪那, 还谈啥高可用性啊, 连用都用不了了。
其它的手段和方式欢迎补充, 不多扯了。
另外, 如果实在不能达成系统某种程度的高可用性, 我们还可以选择某些妥协方案, 比如, 考虑系统的“优雅降级”(又是一个长挂嘴边的词儿), 或者允许系统小部分的不可用等。
总之那, HA就是HA(还是那么绕), 简单又不简单。为了这么个简单的概念, 诸君却需要付出不简单的努力。
相关推荐
双机热备可以分为广义和狭义,广义上是指服务器高可用应用,而狭义上特指两台服务器之间的热备。双机热备按照工作模式可分为主-备方式和双主机方式。主-备方式中,一台服务器处于活动状态处理业务,另一台处于待机...
高可用性(High Availability, HA)主要分为广义和狭义两层含义。广义上的高可用性是指整个系统能够在长时间内持续提供服务的能力,包括硬件、软件、网络等多个层面。狭义的高可用性通常特指通过主机冗余、故障切换...
双机热备在广义上等同于服务器高可用性(High Availability, HA),通常涉及两台服务器。热备软件在检测到故障时,能迅速隔离问题并启动备份服务器,以最小化服务中断时间。 从狭义上看,双机热备特指两台服务器间...
双机热备分为广义和狭义,前者涵盖所有高可用性解决方案,后者则特指两台服务器之间的高可用配置。这种配置可以根据业务规模、维护能力和成本预算进行调整。 此外,基于HA(High Availability)+数据镜像...
从狭义上来看,它指的是装备了高级车载传感器、控制器和执行器的汽车,这些设备能够与外界进行智能信息交换和共享,包括人、车、路、后台等,以实现安全、舒适、节能和高效的驾驶。通过车载传感器,汽车能够自主感知...
外来语在日语中分为广义和狭义。狭义的外来语主要指源自欧美的词汇,如「ラジオ」(radio)、「パン」(pan)。外来语通常用片假名书写,以保持其原始语音特征。部分外来语已经日本化,如「たばこ」(たばこ)、「...
- は/ハ(ha)作为助词使用时读作wa,但输入时仍是ha。 - を/ヲ(wo)的读音为o,但输入时为wo。 #### 二、常识 ##### 外来语 - **定义**:外来语是指在日本的国语中使用的来源于外国语言的词汇。 - **狭义上*...
在狭义上,云计算是指IT基础设施的交付和使用,包括硬件、平台和软件,用户可以根据需要获取和支付资源。而在广义上,云计算涵盖了更广泛的服务交付,不仅限于IT领域,还包括任何可以通过网络按需提供的服务。 ...
在IT领域,“高可用”(High Availability, HA)通常指的是系统在面对单点故障时能够维持正常运行的能力。具体而言,高可用的目标是在硬件或软件发生故障时,确保用户不会察觉到服务中断。 - **狭义定义**:当单一...