400-915-1135
详细

网站故障转移是什么意思?

发表日期:2021-07-22 00:18:35   作者来源:超级管理员   浏览:0

网站故障转移的意思简单理解就是当您的网站发生不可访问时,自动将业务转移到备用服务器上,与对对应的技术有负载均衡,备份服务器,自动漂移等


其中有个主要的连接池概念,是的,说的是连接池,玩Internet架构,连接池是必须掌握的。

连接池是什么?

建立和管理连接缓冲池的技术,其本质是资源重用,无需频繁地创建连接就可以提高性能。

demo:数据库连接池,服务连接池,所有连接池。

在微服务层次结构中,连接池起着非常重要的作用。

image.png

如上所示

(1)上面的虚线框,即网络集群;

(2)低层的虚线框,即service集群;

(3)绿色框,表示上游和下游建立的连接;

(4)表示连接池的蓝色框;

在这种情况下,一个调用者将建立与服务节点的2个连接,服务集群有3个集群,因此连接池总共有6个连接,从c1到c6。

除了将连接池中的收发信息从上层的调用端访问到下游的服务之外,在Internet架构中,还有哪些技术点与连接池有关?

一、故障转移和服务发现。

image (1).png

如上所示

(1)故障转移:假设旧的服务节点s1发生故障,c1和c2连接就会失效,并将其从连接池中清除,并且不再将后续请求发送到故障节点;

(2)服务发现:如果建立了新的服务节点s4连接,然后将c7和c8连接添加到连接池中,并将后续请求发送给新添加的节点;

用新增加的连接动态删除连接,即动态连接池。

该服务发现,如何识别新节点s4连接?

详情请参阅“改变配置,不想重启,怎么整?”

二、负载平衡。

使用轮询策略,在连接池中逐个使用连接,可以实现对下游服务访问的负载平衡。

使用完全随机策略,同样可以达到负载平衡。

image (2).png

如上所示

将每个连接的权值相等,在取连接到下游时,使用随机算法,将哪个网格连接用哪个连接,或上面的例子:

n=random()%6+1;

还有。

n=[1,2]访问s1;

n=[3,4]访问s2;

n=[5,6]访问s3;

3段宽度相同,即下落到某段服务的概率相等,负载均衡。

因此,如果服务节点的服务能力各不相同,有些处理能力很强,那么该怎么办?

三、重量静态负载平衡。

image (4).png

如上所示

为每个服务配置不同的权值,当连接池初始化时,不同服务的间隔大小不一样,在取连接访问下游时,从一个网格访问下一个网格的概率也有所不同:

n=random()%16+1;

还有。

n=[1,2]访问s1;

n=[3,6]访问s2;

n=[7,16]访问s3;

3段宽度与服务的权重成正比,即落到某一服务的概率等同权。

画外音:nginx就是支持这样的,但是静态的重量实在是太重了。

所以,如果服务节点的服务能力不同,但是很难用静态权重来识别,该怎么办?

四、动态负荷负荷平衡。

image (3).png

如上所示:连接池初始化时,动态权值被分配给连接。

绘图音:不再需要配置服务。

负载仍然按前一种方法分配,只是:

(1)连接处理超时,动态权重降低;

(2)成功的连接处理,动态重量增加;

更为详细的细节,请参见“异构服务器的负载平衡,如何设计?”

这样,根据服务的实际处理能力来分配负载的能力,会有什么意义吗?

故障恢复,服务发现,负载平衡,静态重量/动态重量负载均衡,你有收获吗?

建筑师之路——共享技术理念。

有关文章:

“改变了配置,不想重新启动,怎么整?”

不同服务器之间的负载平衡,如何设计?

调查:贵公司改用了底层连接池吗?


本文章多为网络内容整理而来,如有侵犯您的权益,请联系我们免费删除