分布式网站服务器冗余[关闭]


1

假设网站基础设施非常复杂并且是完全分布式的(可能像大多数大型网络公司一样)。

我是否正确地认为虽然有所有这些额外的Web服务器来处理多个客户端请求,但仍然有一个“机器”,用户必须输入?我猜这台机器将是物理上与IP地址相关联的机器?

我问,因为我需要知道,在存在分布式系统的地方,是否还存在单点故障 - 通常是控制节点,或者在本例中,是否连接到公共互联网的机器?当然不能有两台机器连接到互联网,因为它们必须有不同的IP地址?

这台“机器”本身可能不是服务器,但也许它是一台思科设备。我只需要知道,在现实世界中,这些分布式系统是否还有一个特定的部分,它们依赖于一个电子设备的完整性?


当然可以构建没有单点故障的系统。这通常是昂贵的,并且许多实现此目的的技术需要一些非常复杂的配置。
Zoredache

Answers:


1

可以但不需要一台机器所有请求都经过,通常这台机器被称为 负载均衡器 。但是,如果客户端发出的每个请求都是自包含的,或者分布式前端可以与同步的分布式后端通信,则客户端可以针对其发出的每个请求与不同的计算机进行通信。

所有需要发生的事情是客户端为独立机器提供在请求中自己完成请求所需的所有信息,或者服务器根据令牌(通常是网站的cookie)查询后端分布式数据库并且服务器可以拿起其他机器停止的地方。


1

要回答你的问题, 不,您可以构建一个没有单点故障的网站基础架构。

DNS循环允许多个IP与单个域名相关联;这些前端中的每一个都可以依次对话 集群 后端系统,其中有多个独立的数据库副本,这些副本是连续同步的。

杰夫阿特伍德其实 博客 关于Netflix使其系统不受单点故障影响的工作,包括随机删除用于测试的服务/实例的守护进程。



0

可以(通常是)多个不同的IP地址与单个域名相关联。例如,google.com目前已解决(对我而言):

Name:   google.com
Address: 173.194.34.129
Name:   google.com
Address: 173.194.34.130
Name:   google.com
Address: 173.194.34.131
Name:   google.com
Address: 173.194.34.132
Name:   google.com
Address: 173.194.34.133
Name:   google.com
Address: 173.194.34.134
Name:   google.com
Address: 173.194.34.135
Name:   google.com
Address: 173.194.34.136
Name:   google.com
Address: 173.194.34.137
Name:   google.com
Address: 173.194.34.142
Name:   google.com
Address: 173.194.34.128

Web浏览器的行为会有所不同,但通常会随机尝试一个IP地址,如果第一个没有回复,则转到另一个IP地址。所以这里没有单点故障。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.