已获得原公众号的授权转

答案是不会。本题的考察点其实就是 DNS 负载均衡。

一个域名对应多个 IP

从理论上讲,一个域名是可以对应多个 IP 的dns服务器地址,在这种情况下,当不同的用户访问该域名时,就会访问到不同的 IP 地址。

要实现一个域名对应多个 IP 地址的效果,只需要在 DNS 解析操作平台,添加一条解析记录,将网站的域名指向服务器的 IP 地址。一般情况下,一个域名对应一个 IP 地址,也就只需添加一条解析记录即可。

如我们想要将 这个域名分别指向 1.1.1.1(北京电信)、2.2.2.2(上海移动)、3.3.3.3(深圳联通)三个 IP。

那么我们就可以在 DNS 服务器中配置三个 A 记录,分别为:

dns服务器地址_服务器dnsaddress_dns地址服务器地址

如果现在北京用户访问 itmtx.cn 这个域名,上海用户也在访问,两个用户虽然都访问同一个域名,但访问的 IP 地址并不相同,而是会根据 DNS 事先配置的「解析策略」将解析得到的那个 IP 地址返回给对应的访客。

每次域名解析请求都会解析出一个不同的 IP 地址返回给访客dns服务器地址,这样就构成了一个服务器集群,并实现负载均衡的效果。不同用户就近访问不同的服务器 IP 地址,访问速度大大提升,同时也减轻了单个服务器的访问压力。同时,由于有多个备选 IP,当其中一个出现问题时,可以通过宕机切换,提高业务可用性。

DNS 解析策略

常见的 DNS 解析策略包括:

各个 DNS 解析产品可能采用的解析策略不一样,以 DNSPod 解析为例,他采用的就是权重 + 随机的策略:

dns服务器地址_dns地址服务器地址_服务器dnsaddress

基于 DNS 实现负载均衡的优缺点

基于 DNS 实现负载均衡是十分简单和有效的技术手段,它主要有以下几点优势:

将负载均衡工作交给 DNS,省去了网站管理维护负载均衡服务器的麻烦;

技术实现比较灵活,操作简单,成本低,适用于大多数 TCP/IP 应用;

对于部署在服务器上的应用来说,不需要修改任何代码就能实现不同机器上的应用访问;

很多 DNS 系统还支持基于地理位置的域名解析,可以将域名解析成距离用户地理位置最近的服务器地址,加快用户访问速度。

但基于 DNS 的负载均衡同样也存在一些弊端:

目前的 DNS 系统是需要经过递归服务器、顶级服务器、权威服务器以及众多缓存等多级解析的,在每一个环节都可能存在解析记录缓存。如果服务器 IP 发生变动,即使修改了 A 记录,也需要各级缓存失效后才能生效。而在解析生效前的这段时间,用户可能就会根据缓存记录访问到已经被更换过的服务器上,从而导致访问失败。

为了本地 DNS 服务器能够及时同步权威服务器上的最新记录,所以一般将 DNS 缓存刷新时间设置得比较小,这就会导致 DNS 频繁发起解析请求,从而造成额外的网络问题。

DNS 本身并不具备主动监测服务器负载情况或动态调整权重的能力,不能区分不同服务器之间的性能和负载差异,不能反映服务器当前的运行状态,所以一些大型网站总是使用 DNS 域名解析作为第一级负载均衡手段,然后在通过负载均衡服务器提供更高级的负载均衡算法(比如最少连接:将请求发送到拥有最少开放连接的服务器),从而完成最终请求。


娜娜项目网每日更新创业和副业项目

网址:nanaxm.cn 点击前往娜娜项目网

站 长 微 信: nanadh666


每日打卡赢积分兑换书籍入口

  推荐阅读:


娜娜项目网每日更新创业和副业项目

网址:nanaxm.cn 点击前往娜娜项目网

站 长 微 信: nanadh666

声明: 本站内容转载于网络,版权归原作者所有,仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任,若侵犯到你的版权利益,请联系我们,会尽快删除处理!