简介:随着云原生技术的普及,阿里云可编程CDN能力逐渐增强,已经实现在靠近用户的边缘,支持将无状态的业务逻辑以函数或容器的方式在边缘完成算力卸载,以此提供最短时延的交互响应。同时,基于阿里云CDN平台强大的基础资源能力和高性能架构,可以轻松满足企业海量的弹性需求。在1月6日的阿里云CDN年度产品升级发布会中,阿里云高级产品经理陈章炜对EdgeRoutine进行了详细解读。

随着云原生技术的普及,阿里云可编程CDN能力逐渐增强,已经实现在靠近用户的边缘,支持将无状态的业务逻辑以函数或容器的方式在边缘完成算力卸载,以此提供最短时延的交互响应。同时,基于阿里云CDN平台强大的基础资源能力和高性能架构,可以轻松满足企业海量的弹性需求。

阿里云CDN具有全球2800+个节点的巨大节点网络,可以将源站静态文件(例如图片、视频)缓存起来,全球各地客户端就近请求CDN节点即可拿到文件,相比请求服务器源站肯定是大大缩短了网络链路降低了延时,同时,还降低了源站压力,源站不用接收请求,分散到各地的CDN节点处理了。而现在阿里云CDN除了缓存和分发,更是具备了就近分发计算的能力,这就是EdgeRoutine。在1月6日的阿里云CDN年度产品升级发布会中,阿里云高级产品经理陈章炜对EdgeRoutine进行了详细解读。

关注阿里云Edge Plus公众号,回复“新品发布”,免费获取完整PPT

EdgeRoutine——让计算服务更加靠近你的用户

EdgeRoutine是一个运行在CDN边缘节点上的JavaScript代码运行环境,用户可以将JS代码上传至EdgeRoutine,即可在全球的CDN边缘节点上运行,相当于用户在全球各地拥有了大量微型服务器去就近地服务各地的用户。

下面详述下EdgeRoutine的工作原理。首先,打开一个CDN服务器,其中的请求处理流程是:原来纯CDN链路对应的1、8、9、4链路。客户端后CDN网关会去找缓存,如果找到会response给客户端。如果没有找到,会回源请求,之后存到CDN缓存并返回给客户端。

这样的链路在有了EdgeRoutine后会有什么变化呢?主要有这四种情况:

1.ER内JS代码完成对请求的计算&处理,返回给客户端:1→2→3→4
2.ER发出子请求从其他云服务获取数据后加工:1→2→5→3→4
3.ER从Cache、KV读取或存储计算后的结果用以复用:1→2→6→3→4
4.ER可主动Proxy回CDN回源链路: 1→2→7→8→9→10→3→4

EdgeRoutine的适用场景

一、在边缘图文页面渲染

左侧是两种比较常见的前端渲染的架构,一种叫CSR,在客户端去做渲染,一种叫SSR,在服务器端去做渲染。而这两种前端渲染了传统传统架构的话都有一些缺点。比如像第一种全部在客户端做渲染,需要由客户端去发起N个独立请求,去请求中心大资源就在客户端去渲染成一个HTML的页面。这样的方式是比较考验客户端性能,同时因为发起了多个异步的请求,这多个请求的延时可能就不太可控。第二个SSR全部在服务器端做渲染,客户端只要发一次请求就可以了,由服务器端去拉取相应资源,最后渲染HTML页面给到客户端。相对于CSR,SSR的中心服务器压力比较大,成本较高,同时在服务器做渲染的过程当中,客户端需要做等待,可能会影响用户体验。

有了EdgeRoutine,在边缘图文页面渲染,可以将SSR从中心服务器下沉到了边缘节点之上,下图右侧,当客户端发起一个请求,请求就直接在边缘上实现SSR渲染的过程了,好处是不依靠客户端性能,同时由于CDN节点全球的广泛分布,节点压力比较小,还可以获得更低的延时,另外也能够减少重复计算。

二、店铺小程序,类似Combo

下图左侧传统的架构中,当客户端请求过来,服务器上会根据这个请求去把通用的官方模板以及对应用户的个性化三方模板进行一个Combo,Combo成一个店铺小程序的整体框架,最后返回给客户端。其实和SSR类似的是客户端需要等待服务器端的这样过程,会影响用户体验。右侧新方案中,EdgeRoutine将Combo的逻辑放到边缘节点上面去进行,通用的官方模板可以直接缓存在CDN里面,以此减少回源站请求的耗时,通知部分请求可以直接复用Combo的结果,减少重复的Combo计算,进一步降低延时。

三、源站健康状态检查

当用户有多个服务器源站时,就需要一套操作系统来实时、持续监测全球各地来访问源站的可用性。EdgeRoutine直接运行在CDN上,所以EdgeRoutine天然是部署探针服务的一个载体,探针代码在下图右侧中,直接部署在EdgeRoutine上,实时访问源站的情况,并且收集健康信息并回传,以此达到模拟用户并实施的监测服务器可用性的目的。

除此之外,EdgeRoutine可以适用于A/Btest、IoT场景数据清洗、GEO打点,甚至托管个人站点等各类场景,既具备CDN的弹性调度、低成本、低延时特性,同时兼具Serverless简单易用的特性,具有非常大的想象和应用空间。

EdgeRoutine的核心价值

总体来说,EdgeRoutine具备CDN的弹性调度、低成本、低延时的特性,同时也兼顾Serverless简单易用的特性。

一、弹性调度

部署在EdgeRoutine的JS代码将运行在遍布全球各地的CDN节点上。用户的请求将就近访问CDN节点。当某个区域用户请求突增,CDN系统会将请求调度至周边节点,自动弹性扩容,用户无需为每一次可能的业务突增而担心计算资源不够的问题。比如下图左侧的示例,当杭州用户发起请求,就近调度至杭州的CDN节点;当杭州用户的请求突增,调度自动将请求分散调度至杭州周边的嘉兴湖州等区域的CDN节点;而杭州用户的请求进一步突增,调度自动将请求分散调度至更远的无锡上海等区域的CDN节点。阿里云CDN有2800+节点遍布全球,形成一张巨大的调度网络,自动弹性调度。

二、低成本

我们看一下计算的发展史,其实从某种维度来看的话,是对资源的隔离和复用的一个发展史。最早的物理机,到一台物理机被隔离成N台的虚拟机,再到云计算及容器化技术,虚拟机上又可以隔离出N个不同运行环境,整个过程中,用户隔离不断细化,单位硬件设备能够做到更高复用,将资源复用做到极致,给用户带来性价比更高的按量付费服务。这也是EdgeRoutine能为大家带来更低成本的价值的原因。

三、易用(Serverless特性)

传统的应用搭建的流程,用户需要去购买服务器,还需要去运维上面的系统,然后才进行整个开发应用的部署,持续去优化服务性能,需要非常庞大的团队协同。Serverless意味着用户不需要再去关注底层的基础设施,只需要关注核心的业务代码,上传你的代码就完成了整个部署。后端的这些资源是完全自动、弹性伸缩的,可以帮助用户原来缩减运维成本。基于EdgeRoutine的应用构建方式也是如此,只需要在第一次使用时候进行简单的安装配置,即可专注开发业务代码,直接上传部署即可。

四、超低延时

在边缘上直接去处理客户端的请求,跟在中心处理,肯定是会大幅缩短网络链路,这样减少了网络传输的延时风险。同时,EdgeRoutine采用Chromium V8轻量隔离技术,冷启动时间几乎可忽略。

详细的产品信息,可以登录阿里云官网CDN产品文档进行了解。

回顾发布会直播:https://yqh.aliyun.com/live/cdn_0106

原文链接:https://developer.aliyun.com/article/781130?

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

更极速:EdgeRoutine边缘程序相关推荐

  1. 专家解读EdgeRoutine边缘程序

    简介:随着云原生技术的普及,阿里云可编程CDN能力逐渐增强,已经实现在靠近用户的边缘,支持将无状态的业务逻辑以函数或容器的方式在边缘完成算力卸载,以此提供最短时延的交互响应.同时,基于阿里云CDN平台 ...

  2. 小程序 数据库 时间_使用云开发数据库构建更生动的小程序

    导语 长连接服务被广泛应用在消息提醒.即时通讯.推送.直播弹幕.游戏等场景.本篇文章将介绍云开发数据库的长连接服务--实时数据推送,使用它来构建更生动的小程序.什么是实时数据推送? 通过云开发数据库的 ...

  3. 七个最佳 GitHub 代码库,让你成为更好的 JavaScript 程序员

    摘要:在前不久刚发布的 GitHub 年度报告中,JavaScript 依旧是最受程序员欢迎的编程语言,而想要成为一名优秀的 JavaScript 程序员,这 7 个 GitHub 代码库可能会提供助 ...

  4. 使用云开发数据库构建更生动的小程序

    长连接服务被广泛应用在消息提醒.即时通讯.推送.直播弹幕.游戏等场景.本篇文章将介绍云开发数据库的长连接服务 - 实时数据推送,使用它来构建更生动的小程序. 什么是实时数据推送 通过云开发数据库的实时 ...

  5. 微信公众平台接口调试工具json格式不对怎么搞_腾讯云和微信推出更快速的小程序开发平台,微信读书小程序作示范...

    腾讯云副总裁刘颖将腾讯云定义为微信的一个助手,腾讯云面向微信生态开发者输出的技术解决方案包括"小程序·云开发".小程序音视频直播.小游戏联机对战引擎等,腾讯云与企业微信的合作也会在 ...

  6. 微信公众平台接口调试工具json格式不对怎么搞_腾讯云和微信推出更快速的小程序开发平台,微信读书小程序作了示范...

    腾讯云副总裁刘颖将腾讯云定义为微信的一个助手,腾讯云面向微信生态开发者输出的技术解决方案包括"小程序·云开发".小程序音视频直播.小游戏联机对战引擎等,腾讯云与企业微信的合作也会在 ...

  7. 更灵活的边缘云原生运维:OpenYurt 单元化部署新增 Patch 特性

    作者 | 张杰(冰羽) 来源 | 阿里巴巴云原生公众号 背景 在正文开始之前,我们先回顾一下单元化部署的概念和设计理念.在边缘计算场景下,计算节点具有很明显的地域分布属性,相同的应用可能需要部署在不同 ...

  8. AI让边缘更智能,边缘让AI无处不在

    简介:城市管理和城市服务逐步走向智能化,智慧化.到2019底,全国100%的副省级城市,95%以上的地级市,以及50%以上的县级市均提出建设新型智慧城市,并已经有32个主要城市成立了专门的大数据管理机 ...

  9. [Mac入门] 如果更快的打开程序或文件

    今天有位网友问我在Windows下可以用Ctrl+R快速打开程序/文件夹等,在Mac下有没有相类似的功能?本文将介绍一些我的一般做法. 1.Windows下的Ctrl+R是什么? 我打算从解释Ctrl ...

最新文章

  1. RTP timestamp与帧率及时钟频率的关系
  2. MySQL优化篇:SQL优化流程
  3. js中BOM和DOM的区别
  4. 学术界女性有孩子后论文发表率下降约20%,男性则不会
  5. java map reduce 原理_MapReduce实现原理详解
  6. box-sizing属性
  7. python dic字典使用
  8. 二阶声波正演c语言程序_问:程序员怎么敲代码才不累?答:装上显示器支架之后...
  9. [UE4]关闭自动曝光
  10. 最早期的计算机游戏,经典至极让老玩家记忆犹新 初代电脑游戏大作盘点
  11. HTML/CSS 长度单位 px和pt的区别
  12. 站内搜索功能的几种实现方式
  13. 学习要趁早年轻要挣钱
  14. AutoSAR系列讲解 - 交流专区
  15. Cubieboard的U-boot以太网驱动移植
  16. PyCharm-professional-2016.2.3注册码
  17. 智慧交通、智能交通有啥区别
  18. 大学信息技术基础 期末复习
  19. 实验20:OSPF多区域配置
  20. 台式计算机硬盘,台式机硬盘排行 强力推荐两款

热门文章

  1. 杠上了,Linus 再次怒喷 Intel 直言“去死”
  2. 李宏毅机器学习完整笔记发布,AI界「最热视频博主」中文课程笔记全开源
  3. python获取当时文件目录_python获取文件目录
  4. python 指定端口读取网站_Python实现局域网指定端口扫描
  5. 稀疏自编码器_基于tensorflow实现稀疏自编码和在推荐中的应用
  6. c++ char 转 string_4.2String类
  7. android 购物车抛物线,添加到购物车抛物线动画
  8. java二级考点速记_同学,你要的考点速记口诀汇总篇来啦,速记!
  9. bootstrap学习(五)代码
  10. HttpClient-01基本概念