简化的CDN架构分析

CDN架构的设计目标是通过复制系统资源(即Web服务器)的方式来获得高性能和高扩展性,为了能确保在海量内容下可以稳定提供高性能的服务。系统资源的复制可以在本地和地理两个尺度上进行。如果是本地复制则响应用户请求的各台服务器紧密地连接在同一个局域网内。这些服务器一般是共享同一条上行连接,这条上行连接将本地系统连接到互联网。这样的本地系统一般称为集群或簇(cluster)。经过系统资源的复制若干台服务器组织成一个集群可以提供更大的计算能力,它们之间能够以快速有效的方式彼此交互。复制还可以提高容错能力,因为一个出错的节点能够很容易地被旁路。
基于局域网的本地系统有很多优点。不过当网站访问量很大时本地系统的可扩展性在创建和分发资源方面面临一些问题。影响本地复制的第一个问题是所谓的“第一公里”(first mile)问题。第一公里是指服务器集群和互联网之间的网络连接,它是影响端到端性能的系统瓶颈。不仅如此它还是一个潜在的失效单点。无论集群的计算能力如何,集群内通信不畅、外部某个路由器的失效和拒绝服务(DoS)攻击都可能会造成集群无法提供服务。当需要更好的性能和可扩展性时可以在地理这个尺度上复制网络设施中的一些资源会有所帮助。
在一个典型的CDN中,服务器分为两类:边缘服务器(edge server)和核心服务器(core server)。边缘服务器是源服务器(核心服务器)在“互联网边缘”的副本,主要负责与使用网络服务的客户端实现交互。边缘服务器是指那些与客户端距离最近的服务器,典型的例子是多ISP的网络接入点(Points of Presence,POP)。基于DNS的重定向方法使客户端的请求从源服务器转发到边缘服务器。在这个方法中DNS服务器需事先做某些调整,以便当其收到对主机名的查询时,可以将其解析为合适的边缘服务器的IP地址。最佳边缘服务器的算法需要考虑地理意义上的距离、网络意义上的距离、网络连接情况和边缘服务器的状态等因素。
核心服务器是一个逻辑实体,负责处理网络设施的管理、服务请求分配的协调以及维护请求列表。核心服务器可以是一台单独的高性能服务器,也可以是一个多集群(multi-cluster)。多集群中的各个集群之间相互协作,对外却表现为一台虚拟的高可用性和高计算能力的计算机。
网防cdn专业提供国内外高防cdn加速服务
本文链接:http://www.f8i.com/news/347.html
简化的CDN架构分析的更多相关文章
- 基于React的PC网站前端架构分析
代码地址如下:http://www.demodashi.com/demo/12252.html 本文适合对象 有过一定开发经验的初级前端工程师: 有过完整项目的开发经验,不论大小: 对node有所了解 ...
- 分布式MySQL数据库TDSQL架构分析
摘要:腾讯计费平台部为了解决基于内存的NoSQL解决方式HOLD平台在应对多种业务接入时的不足.结合团队在MySQL领域多年应用和优化经验,终于在MySQL存储引擎基础上,打造一套分布式SQL系统TD ...
- [转帖]InfiniBand技术和协议架构分析
InfiniBand技术和协议架构分析 2017年06月06日 20:54:16 Hardy晗狄 阅读数:15207 标签: 云计算存储Infiniband 更多 个人分类: 存储云计算 版权声明 ...
- 【转载】Instagram架构分析笔记
原文地址:http://chengxu.org/p/401.html Instagram 架构分析笔记 全部 技术博客 Instagram团队上个月才迎来第 7 名员工,是的,7个人的团队.作为 iP ...
- 万字长文:ELK(V7)部署与架构分析
ELK(7版本)部署与架构分析 1.ELK的背景介绍与应用场景 在项目应用运行的过程中,往往会产生大量的日志,我们往往需要根据日志来定位分析我们的服务器项目运行情况与BUG产生位置.一般情况下直接在日 ...
- tomcat架构分析 (Session管理)
Session管理是JavaEE容器比较重要的一部分,在app中也经常会用到.在开发app时,我们只是获取一个session,然后向session中存取数据,然后再销毁session.那么如何产生se ...
- Magento架构分析,Magento MVC 设计分析
Magento架构分析,Magento MVC 设计分析 分类:Magento 标签:Magento MVC.Magento架构 669人浏览 Magento 采用类似 JAVA的架构,其扩展与稳定性 ...
- Flickr 网站架构分析
Flickr 网站架构分析 Flickr.com 是网上最受欢迎的照片共享网站之一,还记得那位给Windows Vista拍摄壁纸的Hamad Darwish吗?他就是将照片上传到Flickr,后而被 ...
- Android架构分析之Android消息处理机制(二)
作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz Android版本号:4.4.2 在上一篇文章中我们看了一个使用Handler处理Message消息的样例,本文我们 ...
随机推荐
- Mysql之左连接右连接内连接——示例 (转)
下面是两张表 表stu 表tech 1.右连接 当使用右连接语句查询时,返回结果如下: 1 SELECT stu.id,stu.name,stu.classe_name,tech.id,tech.na ...
- Part 3:视图和模板--Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- nginx把POST转GET请求解决405问题
405重定向,然后把POST转GET upstream local { server 10.0.1.11:81; } server { listen 81; server_name testf.xxx ...
- git常用命令,学git代码管理
下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一. ...
- 是否编码输出html字符
template.config(name, value)方法用于更改引擎的默认配置. 其中字段escape,类型为boolean,默认为true. 首先,我们不修改配置信息输出一段带有html标签的字 ...
- javascipt中的DOM对象
1.HTML中DOM对象的概念 HTML Document Object Model(文档对象模型) HTML DOM定义了访问和操作HTML文档的标准方法 HTML DOM把HTML文档呈现为带有元 ...
- spring jdbc踩坑日记,new JdbcTemplate 为null导致UserDao一直为null
private DataSource datasource; private JdbcTemplate jdbcTemplateObject; //设置注入 public void setdataso ...
- 关于C#连接Oracle数据库 尝试加载Oracle客户端时引发BadImageFormatException 如果在安装32位Oracle客户端组件的情况下以64位模式运行,将出现此问题
这个问题已经困扰了我快一个月了,各种百度,各种博客,可是,一个个都试过了,什么下载32位客户端,配置环境变量什么的,纯属扯犊子,开发环境win10 64位 oracle 11g r2 64位,这 ...
- IntelliJ IDEA使用心得之基础篇
今天和大家分享一个非常好用的Java开发工具-IntelliJ IDEA. 下载地址:https://www.jetbrains.com/idea/ 目录: 1)IntelliJ IDEA使用心得之基 ...
- 百度地图、高德地图、Google地图等坐标系相关梳理
1.地理坐标系与投影坐标系 地理坐标系也就是球面坐标系,是将本不是椭球体的地球进行椭球体化,从而形成球面坐标体系,国际标准的地理坐标系就是WGS-84坐标系: 只不过各个国家为了反映该国家所在区域地球 ...