全局负载均衡技术如何将用户的访问指向离用户最近的工作正常的流媒体服务器上

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: 全局负载均衡技术如何将用户的访问指向离用户最近的工作正常的流媒体服务器上;出处:https://segmentfault.com/q/1010000004556003?utm_source=weekly&utm_medium=email&utm_campaign=email_weekly原题为:负载均衡 是如何如何分发 请求到用户最近的服务器的?首先我们要明确几件事:1、在CDN的案例图中,其实B和C不会在不同的城域。

全局负载均衡技术如何将用户的访问指向离用户最近的工作正常的流媒体服务器上;

出处:https://segmentfault.com/q/1010000004556003?utm_source=weekly&utm_medium=email&utm_campaign=email_weekly

原题为:负载均衡 是如何如何分发 请求到用户最近的服务器的?


首先我们要明确几件事:
1、在CDN的案例图中,其实B和C不会在不同的城域。如果在不同的城市,一般会在那个地域也放置一个反向代理服务器或反向代理节点。B和C为同一地域,A为B、C的负载均稀器或调度器;
2、CDN的部署里,为避免单点故障或应对业务峰值,A并不是单台服务器,一般由多台服务器进行调度,一般采用LVS进行七层的负载和转发。通过LVS的负载均衡策略将业务转发至B和C,负载均衡策略可以进行设置,如轮询,权重轮询、随机等等;
3、CDN一般由DNS来做为用户流量调度,也是CDN的核心,即将用户的请求调度至距用户最近的节点,例如节点D,节点D通过负载均衡策略将请求分发至节点D后端的业务服务器E和F。
4、你看到的这句话,是指DNS层面的调度。

流媒体业务使用CDN的发布业务的前提和流程如下:
1、在流媒体业务服务器域名注册商修改域名的CNAME记录为CDN服务厂商的域名;(这一步是使用CDN的首要条件)
2、CDN服务厂商为业务设置不同地域的缓存节点,如北京、上海、美国等
3、不同地域设置的缓存节点具有不同的IP地址地址池,并且该节点内拥有业务调度器(LVS的DR)及真正的业务缓存服务器,缓存服务器通过类似Squid等程序定期缓存流媒体业务服务器的视频信息及网页信息,每隔一段时间进行更新请求;
4、用户通过DNS调度请求到某一节点时,该节点通过LVS技术将用户的请求调度至节点内某一以缓存节点进行处理,并返回结果给用户;(可参照LVS的工作模式)
5、当缓存节点有用户请求的内容时,将直接返回内容给用户,当缓存节点发现请求的内容不存在时,会主动返回流媒体业务的源服务器进行内容请求,并将结果缓存至缓存节点。
6、用户最终拿到缓存节点上的视频内容及信息,由于通过DNS调度至用户最近的节点,通过LVS调度至最快最优的服务器进行处理,故加快了用户访问网站及视频的速度。(视频的加速其实还有一种技术叫cache技术,即将视频提前下载到距用户最近的节点,用户看起来等于在局域网中查看)

DNS和CDN调度的流程如下:
1、用户访问流媒体业务的域名如“www.abc.com";
2、www.abc.com的cname记录为CDN服务厂商的域名,如www.abc.com.cdncache01.com;
3、用户的请求被转发至www.abc.com.cdncache01.com进行处理,即触发用户对www.abc.com.cdncache01.com域名的解析处理。DNS解析流程见图“DNS解析流程图”
4、www.abc.com.cdncache01.com域名在权威服务器里配置的记录为多条的,即智能DNS,可参考DNSPOD,即一个域名可以根据地域的不同配置不同的解析策略,源地址为北京联通的,即解析为用户指定的联通服务器IP地址,源地址为广州移动的,即解析的IP地址为用户指定广州移动的IP地址。
5、DNS通过AnyCast技术进行三层负载均衡,类似于OSPF的等价路由,如8.8.8.8这个地址实际为一个AnyCast地址,即谷歌全球的递归DNS服务器均使用8.8.8.8作为Global DNS地址,当用户通过8.8.8.8请求域名解析时会带上自己的DNS服务器地址进行请求,即8.8.8.8会查询请求过来的客户端地址是哪里的IP地址,如果是北京联通的,即将请求解析为北京联通的一个IP地址或解析为北京联通的一个负载均衡节点CNAME域名。
6、为了达到更精准备的DNS解析调度,谷歌还研发了edns-client-subnet,即在DNS授权、递归、缓存上均支持该Edns协议,支持该协议后,用户在请求DNS域名解析时,会带上自己客户端的源IP地址放在请求包里,而非客户端配置的DNS服务器IP地址。这样就有效的避免了用户使用Global DNS服务器时不能调度精准的问题。(有关DNS授权、递归等问题可以参照RFC 1034和1035)
7、按照以上流程用户请求www.abc.com.cdncache01.com,会得到一个距离用户上网所在地域最近的一个CDN缓存节点的IP地址即楼主图中的反向代理服务节点。假设IP地址为1.2.3.4。
8、用户请求1.2.3.4的流媒体业务,节点1.2.3.4通过LVS及其它负载均衡技术将用户的请求分发布该节点内最优最快的缓存服务器,如服务器E,IP地地址为192.168.1.4,即由192.168.1.4进行业务处理。
9,服务器192.168.1.4直接将结果返回给用户。

附DNS解析流程图:


相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
2月前
|
弹性计算 监控 负载均衡
|
5天前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享
|
13天前
|
存储 算法 数据挖掘
服务器数据恢复—nas中raid6阵列失效,存储无法访问的数据恢复案例
一台nas上共有14块硬盘组建了一组raid6磁盘阵列。 该nas在工作过程中,raid6阵列中硬盘出现故障离线,导致raid6阵列失效,nas无法正常访问。
|
2月前
|
负载均衡 网络协议 数据库
选择适合自己的数据库多实例负载均衡技术
【10月更文挑战第23天】选择适合自己的数据库多实例负载均衡技术需要全面考虑多种因素。通过深入的分析和评估,结合自身的实际情况,能够做出明智的决策,为数据库系统的高效运行提供有力保障。
129 61
|
1月前
|
弹性计算 负载均衡 网络协议
ECS中实现nginx4层7层负载均衡和ALB/NLB原SLB负载均衡
通过本文的介绍,希望您能深入理解并掌握如何在ECS中实现Nginx四层和七层负载均衡,以及如何使用ALB和NLB进行高效的负载均衡配置,以提高系统的性能和可靠性。
140 9
|
1月前
|
运维 监控 负载均衡
slb后端服务器故障
slb后端服务器故障
56 13
|
1月前
|
缓存 负载均衡 算法
深入理解后端服务的负载均衡技术
在现代网络服务架构中,高效的负载均衡策略对于保证应用性能和可靠性至关重要。本文将深入探讨后端服务中的负载均衡技术,包括其重要性、常见算法以及如何实现高效均衡。通过分析不同的负载均衡方法,我们旨在为开发者提供实用的指导,帮助他们优化自己的系统架构。
|
2月前
|
弹性计算 负载均衡 安全
slb应用服务器对Host头有校验要求
slb应用服务器对Host头有校验要求
34 6
|
1月前
|
负载均衡 网络协议 算法
Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式
本文探讨了Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式,以及软件负载均衡器、云服务负载均衡、容器编排工具等实现手段,强调两者结合的重要性及面临挑战的应对措施。
101 3
|
1月前
|
存储 编解码 应用服务中间件
使用Nginx搭建流媒体服务器
本文介绍了流媒体服务器的特性及各种流媒体传输协议的适用场景,并详细阐述了使用 nginx-http-flv-module 扩展Nginx作为流媒体服务器的详细步骤,并提供了在VLC,flv.js,hls.js下的流媒体拉流播放示例。
189 1

热门文章

最新文章