博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网页访问过程(基于CDN)
阅读量:4620 次
发布时间:2019-06-09

本文共 927 字,大约阅读时间需要 3 分钟。

1. 全局负载均衡(基于DNS)

如果有多台 WEB 服务器同时为一个域名提供服务时,即一条 URL 对应多个 IP 地址,那么该 URL 的权威域名服务器可能会根据该 URL 解析出多个 IP 地址,并根据每个 IP 地址所对应的服务器的性能和负载状况选择出最优的服务器 IP 地址返回给用户,用户根据该地址进行访问。

DNS-A记录实现全局负载均衡

如图所示,步骤详解:

  1. 用户访问一个网站(www.blog.myyd.com),向本地 DNS 服务器请求该域名对应的 IP 地址
  2. 由于是第一次访问,本地 DNS 服务器也没有缓存记录,于是进行递归查询
  3. 递归查询返回的结果是指向该网站的权威域名服务器,于是本地 DNS 服务器向该权威域名服务器请求该域名所对应的 IP 地址
  4. 权威域名服务器根据自己本地配置的负载均衡策略(如A记录)返回一台 CDN 边缘节点的 IP 地址给本地 DNS 服务器(返回的IP是Virtual-IP2)
  5. 本地 DNS 服务器拿到 IP 地址后返回给用户
  6. 用户根据本地 DNS 服务器返回的地址(VIP2)对真实服务器进行访问
  7. 服务器返回响应

2. 本地负载均衡(基于LVS-DR)

LVS-DR

对上图第 ⑥ 步的扩展:

  1. 用户(Client)向该 URL 对应的 IP 地址(VIP)发出请求,此时报文 IP 头是:src-ip=CIP|dst-ip=VIP,经过运营商的网络到达服务器集群的出口网关(Router)
  2. 网关(Router)拆开报文发现 dst-ip=VIP 在本地配置的静态路由中,下一跳指向 DIP,于是将报文重新封装好并且将 dst-mac 改为 DR-mac 发给 Switch
  3. Switch 查询 CAM 表后发送给 DR
  4. 实际上 DR 内核中的 IPVS 模块先收到该报文,然后判断 dst-ip 是否是 VIP 并且该数据包请求的服务是否是后端 RS 提供的服务?若是则执行 IPVSadm 中配置的负载均衡策略,并将 dst-ip 改为策略选中的 RS 的 RIP(不是VIP)
  5. RS 收到后直接将响应返回给用户(Client),不经过 DR

转载于:https://www.cnblogs.com/myyd/p/7820991.html

你可能感兴趣的文章
也谈智能手机游戏开发中的分辨率自适应问题
查看>>
关于 IOS 发布的点点滴滴记录(一)
查看>>
《EMCAScript6入门》读书笔记——14.Promise对象
查看>>
CSS——水平/垂直居中
查看>>
Eclipse连接mysql数据库jdbc下载(图文)
查看>>
Python中Selenium的使用方法
查看>>
三月23日测试Fiddler
查看>>
20171013_数据库新环境后期操作
查看>>
poj 1654 && poj 1675
查看>>
运维派 企业面试题1 监控MySQL主从同步是否异常
查看>>
Docker 版本
查看>>
poj 1753 Flip Game
查看>>
在深信服实习是怎样的体验(研发测试岗)
查看>>
Linux免密码登陆
查看>>
SpringMVC中文件的上传(上传到服务器)和下载问题(二)--------下载
查看>>
Socket & TCP &HTTP
查看>>
osip及eXosip的编译方法
查看>>
Hibernate composite key
查看>>
[CF Round #294 div2] D. A and B and Interesting Substrings 【Map】
查看>>
keepalived+nginx安装配置
查看>>