Edge Cache(边缘缓存) 的概念-阿里云开发者社区

开发者社区> -技术小能手-> 正文

Edge Cache(边缘缓存) 的概念

简介: Edge Cache(边缘缓存) 的概念
+关注继续查看

[Edge Caching for Media Delivery](https://docs.microsoft.com/en-us/iis/media/iis-media-services/edge-caching-for-media-delivery)


边缘缓存是指使用缓存服务器来存储更接近最终用户的内容。例如,如果您访问一个流行的网站并下载一些被缓存的静态内容,每个后续用户都将直接从缓存服务器获得该内容,直到它过期。为什么边缘缓存很重要?


将缓存视为发布国际报纸的出版商的业务。如果所有的印刷都在一个地方完成,每个订阅者的运输成本会大大降低利润,而延迟收到纸张会导致客户取消订阅。实际上,大多数国际报纸都会向世界各地的印刷机发送一份主“副本”,然后印刷机复制这些报纸并在当地交付。这些地方印刷厂一天大概要印好几张这样的报纸,最大限度地利用他们的设施来增加利润。在 Web 上,缓存服务器是那些本地印刷机,将报纸(Web 内容)从流行出版商(内容制作者)传送到许多最终用户。


对于 Internet 上的内容制作者,有许多选项可以将边缘缓存添加到您的交付模型中。许多涉及使用内容交付网络 (CDN) 来处理内容生产者与其最终用户之间的所有步骤,以根据交付的数据量收取费用。地理位置分散的企业通常会构建自己的企业 CDN (eCDN),主要是为了减少跨 WAN 链接的网络拥塞和成本。


Traditional Challenges for Media

边缘缓存的想法非常适合通过 HTTP 传送的网页和其他内容。 但是,当涉及到媒体时,尤其是对于通过传统流媒体传输的现场活动,会引入新的挑战。


Scale

特别是对于现场活动,媒体传统上是由使用非标准协议的相对较少的专用流媒体服务器(通常每 10 个或更多 HTTP 边缘缓存 1 个)传送。 大型活动需要对流媒体服务器进行特殊配置,而且越来越多的情况下,这还不够。


Cost

就大小而言,以传输的字节数来衡量,音频和视频内容更像是一本 26 卷的百科全书,而不是一份报纸。 大规模支持这种吞吐量会导致显着更高的硬件和网络容量要求。


用户体验

之前的挑战可能会导致用户体验不佳——缓冲、播放质量差、达到带宽上限。


How Edge Cache Works

[边缘缓存](https://manuals.gfi.com/en/exinda/help/content/exos/how-stuff-works/edge-cache.htm)支持基于 Internet 的内容的单边缓存,包括 Web 对象、视频和软件更新。 Edge Cache 只需要一台 Exinda 设备。


当从 Internet 或通过 WAN 链接下载 Web 对象时,Edge Cache 将它们存储在网络边缘。当后续请求针对同一材料时,内容会从边缘缓存快速传送,无需再次通过 WAN 下载数据。结果是能够体验 WAN 对象的 LAN 速度,并为用户提供更好的网络体验。


Edge Cache 还支持 HTTPS 站点,允许设备成为转发代理并解密内容以进行缓存。随着越来越多的应用程序和服务迁移到云中,这一点很重要。这些基于 SaaS 的应用程序通常通过 HTTPS 交付,因此要有效,Edge Cache 必须支持缓存此 HTTPS 流量。


Edge Cache 还提供缓存统计数据,可让您深入了解从 WAN 链接卸载的重复数据量、网络数据的可缓存程度以及访问缓存的频率。


Caching Internet-based Content

为了缓存网络流量,客户端 Exinda 设备与流量保持一致。当网络用户访问包含可缓存内容的 URL 时,边缘缓存首先确定该内容是否在其缓存中可用。如果没有,Edge Cache 会从 URL 中检索内容。检索内容后,将其存储在缓存中,其到期日期与源网站上指定的一样。这假设内容是可缓存的并且属于边缘缓存设置参数,例如对象的大小以及 URL 是否被列入黑名单。下次网络用户访问相同的 URL 时,Edge Cache 会通过查看对象到期日期来确定内容在缓存中可用并且内容不是过时的。然后内容从缓存提供给客户端,而不是通过 WAN 从 URL 检索。


边缘缓存使用最近最少使用 (LRU) 算法来使缓存数据过期,为新对象腾出空间。这意味着最流行和最常用的内容存储时间最长。如果需要,您还可以手动清除整个缓存。


边缘缓存作为透明代理运行,因为它运行在内联设备上。因此,您的浏览器无需使用显式代理配置进行配置。


Caching Encrypted Internet-based Content

当网络用户访问 HTTPS URL 时,如果未启用 HTTPS 缓存,Edge Cache 无法确定请求的内容,因为流量已加密,包括请求的 URL。即使它可以缓存加密数据,对同一 HTTPS URL 的下一个请求也不会包含相同的缓存数据,因为加密模式会有所不同。通过启用 HTTPS 缓存,Edge Cache 能够充当转发代理,从服务器检索内容,对其进行解密,然后通过加密的通信通道将其提供给客户端。然后可以从缓存中处理以后的请求。


要支持此功能,您需要将受信任的证书上传到设备,然后边缘缓存使用该证书对所有动态生成的站点证书进行签名。所有客户端设备都必须信任此证书作为签名机构。


为了缓存加密的 Web 流量,客户端尝试与 HTTPS Web 服务器通信。 Exinda 设备进行拦截,保持与客户端的通信畅通。然后边缘缓存尝试与服务器建立对话。从服务器收到证书详细信息后,边缘缓存会提取证书详细信息,构建新证书并使用在边缘缓存设置中加载和指定的签名证书对其进行签名。Edge Cache 然后将这个新证书提供给客户端。客户端信任此证书,因为详细信息与其 HTTPS URL 请求匹配,因为客户端之前已被告知信任此签名证书签名的任何内容(见下文)。客户端和边缘缓存之间的通信协商现已完成。然后客户端从 Edge Cache 请求特定的 Web 对象,就好像它是服务器一样。然后,边缘缓存通过其先前建立的可信连接从服务器请求 Web 对象。服务器将内容提供给边缘缓存,边缘缓存然后存储内容(如果适用)。可以关闭与服务器的连接。然后边缘缓存将内容提供给客户端,然后可以关闭与客户端的连接。


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Memcached缓存
memcached是应用较广的开源分布式缓存产品之一,它本身其实不提供分布式解决方案。 在服务端,memcached集群环境实际就是一个个memcached服务器的堆积,环境搭建较为简单。 cache的分布式主要是在客户端实现,通过客户端的路由处理来达到分布式解决方案
5 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10076 0
Guava Cache缓存设计原理(下)
Guava Cache基于ConcurrentHashMap的设计,在高并发场景支持和线程安全上都有相应改进策略,使用Reference引用命令,提升高并发下的数据访问速度并保持了GC的可回收,有效节省空间。 write链和access链的设计,能更灵活、高效的实现多种类型的缓存清理策略,包括基于容量的清理、基于时间的清理、基于引用的清理等。 编程式的build生成器管理,让使用者有更多的自由度,能够根据不同场景设置合适的模式。 还可以显式清除、统计信息、移除事件的监听器、自动加载等功能。
9 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,大概有三种登录方式:
2962 0
使用Nginx反向代理和proxy_cache缓存搭建CDN服务器加快Web访问速度
碰到问题:移动用户访问web服务器www.osyunwei.com很慢解决办法:1、在移动机房放置一台nginx反向代理服务器2、通过域名DNS智能解析,所有移动用户访问www.osyunwei.com时解析到nginx反向代理服务器3、nginx反向代理服务器与web服务器之间采用专线连接系统运维  www.
1637 0
高可用服务架构设计(12) - 基于request cache请求缓存技术优化批量商品数据查询接口
0 Github 回顾执行流程 1、创建command,2种command类型 2、执行command,4种执行方式 3、查找是否开启了request cache,是否有请求缓存,如果有缓存,直接取用缓存,返回结果 首先,reqeust context(请求上下文) 一般在一个web应用中,Hy...
2942 0
(总结)关于Linux的缓存内存 Cache Memory详解
PS:前天有童鞋问我,为啥我的Linux系统没运行多少程序,显示的可用内存这么少?其实Linux与Win的内存管理不同,会尽量缓存内存以提高读写性能,通常叫做Cache Memory。 有时候你会发现没有什么程序在运行,但是使用top或free命令看到可用内存free项会很少,此时查看系统的 /...
1074 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
12071 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13884 0
ASP.NET状缓存Cache的应用-提高数据库读取速度
原文:ASP.NET状缓存Cache的应用-提高数据库读取速度一、 Cache概述       既然缓存中的数据其实是来自数据库的,那么缓存中的数据如何和数据库进行同步呢?一般来说,缓存中应该存放改动不大或者对数据的实时性没有太多要求的数据。
845 0
1727
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载
《2021云上架构与运维峰会演讲合集》
立即下载