CDN、P2P、PCDN的区别是什么

本篇文章为大家介绍一下与网络加速有关的几个重要概念,一起了解一下CDN,P2P和PCDN究竟是什么吧!

1. CDN

CDN即Content Delivery Network,中文全称为内容分发网络。

如果内容离用户远,用户可能无法获得及时的响应,那么这个时候,如果我们想办法把内容缓存在离用户近的地方,这样不就可以解决这个问题了?CDN技术就是解决了这样一个问题,因为这项技术是将内容进行了分发,所以名字叫做内容分发网络。

CDN 通过将内容发布到距离用户更近的网络“边缘”侧,并根据用户所在位置将用户请求调度到离该内容最近的网络节点服务器,使用户就近获取内容,从而减少中心服务器的网络压力,并提高用户访问响应速度。

需要注意的是,CDN并不是只能缓存视频内容,它还可以对网站的静态资源进行分发,这些静态资源包含各类型图片、html、css、js等。此外,移动应用APP的静态内容也是类似,安装包apk文件、APP内的图片视频等都可以通过CDN来进行分发。

传统架构

CDN架构

CDN市场规模

上图是2020-2025年中国CDN行业市场规模预测情况,截止2020年底,中国CDN市场规模达 311亿元,同比增速超30%。预计到2025年,CDN行业的市场规模将达到 950亿元 左右。

总而言之,CDN应用范围广且行业市场前景广阔。

2. P2P

P2P即Peer-To-Peer,应用于互联网上,是指一种点对点传输的网络结构,形象地描述为图1这样一个搭档式的组织结构。如同人与人之间的交流,每个节点(也就是搭档)之间地位相同,又相互独立,处于对等状态,不以个人为中心,既可以作为客户端又可以作为服务端,彼此之间实现资源共享,即我为人人,人人为我的核心思想。还能动态地加入或退出系统,消除了中间环节,减轻了节点之间的沟通代价。

简单来说,P2P就是指数据的传输不再通过服务器,而是网络用户之间直接传递数据。

P2P 技术主要可总结为以下四个特点:

(1)无中心点。

 P2P 技术是将网络中所有的资源和服务分散在每一个节点上,这样每一个节点都具有了相同的地位,兼具双重功能, 既可以请求服务也可以提供服务。 这一特点是 P2P 技术模式显著区别于 CDN 技术的鲜明特点。

(2)健壮性和可扩展性。

突破了传统的 C/S 模式限制,每一个节点工作的过程中受网络和其他节点的影响较小, 即使少量的节点或者网络遭到破坏出现故障, 也不会影响整个系统的正常运行。

(3)高性价比。

P2P 技术具有较高的性价比,在较低成本的前提下能够兼顾优良的工作性能。

(4)负载均衡。  

由于 P2P 模式的客户/服务双重性特点,资源分配的均衡降低了传统 C/S 模式对服务器运算和储存能力的要求,体现了整个网络的负载均衡。

3. PCDN

PCDN是什么意思?

在CDN产品的基础上融合新一代P2P技术,充分利用边缘网络海量碎片化的计算、存储、网络等闲置资源构建低成本、高质量的内容分发网络服务。通过创新的分发网络优化技术和精准的智能调度系统,在为用户提供稳定、高质量的分发加速服务的同时,显著降低分发成本。

适用于视频点播、直播、大文件下载等业务场景。

PCDN技术的优势:

减少中心节点数据源的压力

CDN 服务节点获取数据的方式为直接访问数据源服务器,内容中心压力大、消耗带宽多。 融合方案对 CDN 服务节点 采用 P2P 方式进行组织,节点间点对点互相共享、数据缓存, 缓解内容中心压力。

系统服务能力的高可靠性

CDN 系统的自我恢复能力和整体冗余能力在不同服务节 点对中心数据的多点备份下得以提高, 系统稳定性亦进一步增强。

服务灵活性提升

P2P 下的数据共享方式, 可提供的服务节点数量大大增加,同时各个服务节点灵活性大大提升。

可扩展性增强,提升服务效率

面对用户访问高并发、无规律的情况,采用 P2P 技术对下层内容进行分发,使整体系统具有良好的弹性,能够保持良好的服务效率。

提高网络的可管理性,避免流量无序

传统 P2P 技术容易造成过多的跨地区而导致的骨干网拥塞、流量无序的问题。 系统将 P2P 的范围严格限制在某一边缘服务节点的服务区域内,增强了网络服务的可靠性。

4.总结对比

内容CDNP2PPCDN
节点资源全部来自IDCP2P互传资源互补
用户管理有效性可实现用户的有效管理无法进行有效的用户管理可实现用户的有效管理
成本成本高成本低成本适中
性能高性能性能不稳定高性能


好啦,以上就是关于CDN P2P和PCDN的介绍,感谢大家的耐心阅读。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/8516.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

读kafka生产端源码,窥kafka设计之道(下)

背景 在上一篇文章《读kafka生产端源码,窥kafka设计之道(上)》 留下了kafka设计上比较优秀的一个点;内存的循环使用。本篇文章准备盘盘它。 好奇 为什么 kafka减少发送消息时向JVM频繁申请内存,就可以降低JVM GC的执…

任务的创建与删除

Q: 什么是任务? A: 任务可以理解为进程/线程,创建一个任务,就会在内存开辟一个空间。 比如: 玩游戏,打篮球,开车,都可以视为任务。 Windows 系统中的 MarkText 、谷歌浏览器、记事本&#xff0…

React Dva项目中模仿网络请求数据方法

我们都已经选择react了 那么自然是一个前后端分离的开发形式 至少我在公司中 大部分时候是前后端同时开发的 一般你在开发界面没有接口直接给你 但你可以和后端约定数据格式 然后在前端模拟数据 我们在自己的Dva项目中 在根目录下的 mock 目录下创建一个js文件 我这里叫 filmDa…

开源视频监控管理平台国标GB28181视频EasyCVR电子地图功能展示优化

视频汇聚平台EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。视频监控综合管理平台EasyCVR可提供的视频能力包括&#…

基于JavaSE的手机库存管理系统

1、项目背景 基于JavaSE完成如下需求: 功能需求: 1、查询库存量 2、可以修改库存中不同品牌手机的个数 3、退出系统 实现步骤: 1、把List当做库房 2、把手机存放在库房中 3、使用封装的方法区操作仓库中的手机 2、项目知识点 面向对象 集合…

AI Chat 设计模式:9. 命令模式

本文是该系列的第九篇,采用问答式的方式展开,问题由我提出,答案由 Chat AI 作出,灰色背景的文字则主要是我的一些思考和补充。 问题列表 Q.1 介绍下命令模式A.1Q.2 详细说说命令模式适用于啥场景呢A.2Q.3 举一个命令模式的例子&a…

基于SpringBoot的开源项目/demo汇总

一些基于SpringBoot的开源项目,方便大家学习,参考。持续更新,排名不分先后。也欢迎贡献(回复此贴)。 1、GitHub - Tencent/APIJSON: 🏆 零代码、全功能、强安全 ORM 库 🚀 后端接口和文档零代码…

Wireshark抓包分析教程(ubuntu版本)

安装 first,多亏我们的C知道,成功安装了wireshark, Steps are as following: 添加wireshark的软件源(PPA:personal package archive(档案)) sudo apt-add-repository ppa:wireshark-dev/stable ppa:wireshark-dev/stable 是一个…

C++语法(26)--- 特殊类设计

C语法(25)--- 异常与智能指针_哈里沃克的博客-CSDN博客https://blog.csdn.net/m0_63488627/article/details/131537799?spm1001.2014.3001.5501 目录 1.特殊类设计 1.设计一个类,不能被拷贝 C98 C11 2.设计一个类,只能在堆上…

echarts制作多个纵轴的折线图

代码 <script type"text/javascript"> $(function (){var myChart echarts.init(document.getElementById(main));option {color: ["#9bbb59","#0B438B","#4141F1","#F81945","#4bacc6","#F89E19&q…

Python 电商API 开发最佳实践

一、简介 当你打卡了一家北京最具有地中海特色的餐厅&#xff0c;当我们在餐厅点餐时&#xff0c;服务员会给我们一份菜单&#xff0c;菜单上列出了所有可供选择的菜品和饮料。我们可以在菜单上选择我们想要的食物和饮料&#xff0c;然后告诉服务员我们的选择。服务员会根据我…

soft ip与hard ip

ip分soft和hard两种&#xff0c;soft就是纯代码&#xff0c;买过来要自己综合自己pr。hard ip如mem和analog与工艺有关。 mem的lib和lef是memory compiler产生的&#xff0c;基于bitcell&#xff0c;是foundry给的。 我正在「拾陆楼」和朋友们讨论有趣的话题&#xff0c;你⼀起…

数学建模专栏简介

&#x1f64c;作者简介&#xff1a;数学与计算机科学学院出身、在职高校高等数学专任教师&#xff0c;分享学习经验、生活、 努力成为像代码一样有逻辑的人&#xff01; &#x1f319;个人主页&#xff1a;阿芒的主页 ⭐ 高等数学专栏介绍&#xff1a;本专栏系统地梳理高等数学…

WebSocket心跳机制

WebSocket是HTML5开始提供的一种浏览器与服务器进行全双工通讯的网络技术&#xff0c;属于应用层协议。 WebSocket 使得客户端和服务器之间的数据交换变得更加简单&#xff0c;允许服务端主动向客户端推送数据。 1、创建webSocket // Create WebSocket connection. const sock…

CountDownLatch和CyclicBarrier学习

CountDownLatch和CyclicBarrier都有一个计数器 CountDownLatch countDownLatch new CountDownLatch(4); CyclicBarrier cyclicBarrier new CyclicBarrier(4) CountDownLatch 是在 countDownLatch.countDown()执行后 4-1 等到4减到0后&#xff0c;就可以继续执行程序&#x…

【如何训练一个中英翻译模型】LSTM机器翻译seq2seq字符编码(一)

系列文章 【如何训练一个中英翻译模型】LSTM机器翻译seq2seq字符编码&#xff08;一&#xff09; 【如何训练一个中英翻译模型】LSTM机器翻译模型训练与保存&#xff08;二&#xff09; 【如何训练一个中英翻译模型】LSTM机器翻译模型部署&#xff08;三&#xff09; 【如何训…

音频降噪之人声分离

音频降噪 Ultimate Vocal Remover GUI v5.5.1工具使用 1&#xff1a;是什么 集成目前最先进的从音频文件中分离人声的源分离模型。 本工程&#xff0c;将Ultimate Vocal Remover GUI v5.5.1界面工具&#xff0c;改写成可以在服务器端批量推理的工具。 界面仓库地址&#xff…

PysparkNote006---rdd的flatMap

import pyspark.sql.functions as F from pyspark.sql import SparkSession from pyspark.sql.types import * from pyspark.sql.types import Row# 创建SparkSession对象&#xff0c;调用.builder类 # .appName("testapp")方法给应用程序一个名字&#xff1b;.getOr…

APISIX 安全评估

背景 有大佬已经对 [apisix攻击面](https://ricterz.me/posts/2021-07-05-apache-apisix-attack- surface-research.txt)做过总结。 本文记录一下自己之前的评估过程。 分析过程 评估哪些模块&#xff1f; 首先我需要知道要评估啥&#xff0c;就像搞渗透时&#xff0c;我得…

Springboot项目打包war配置详解

Springboot项目打包war配置详解 1. 排除内置tomcat依赖2. 添加servlet依赖3. 修改打包方式4. 修改主启动类5. 完整pom.xml6. 效果图 1. 排除内置tomcat依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter…