【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

又拍云张聪谈安全、HTTPS、自定义、CDN 的未来趋势

  • 2016-10-25
  • 本文字数:2419 字

    阅读完需:约 8 分钟

近期,EGO 对又拍云研发构架师张聪进行了专访,在专访中张聪阐述了他对 CDN 未来独特的见解,听得小拍崇拜不已,赶忙为大家搬来采访稿,大家快来跟小拍一起跟随张聪了解一下 CDN 的未来吧!

专注于场景化 CDN 业务的又拍云,自创办以来,业务、团队一直在快速扩张。在这个过程中,又拍云完成了技术选型、替换、迭代优化等一系列工作,既有国内较早引进 ngx_lua 的壮举,也难以避免地有踩过一些坑。EGO 特别采访了又拍云架构师张聪,听他聊聊又拍云在基础架构方面的那些事儿,也聊聊关于 CDN 未来又有哪些可能。

下面是经过编辑整理的采访内容:

EGO:先简单介绍一下自己吧?

张聪:我 4 年前加入又拍云,之后一直从事 CDN 领域的工作,非常有幸经历了又拍云 CDN 从早期起步比较简陋、用户量比较少的阶段,到今天业务量不断扩大、技术体系不断变革完善的整个发展过程。

最早团队小的时候,什么事都需要自己去做,像写代码、上线、运维等都得一个人搞定,现在 CDN 团队不断扩大,除了技术之外,我也开始负责一些管理团队的工作,虽然中间也遇到了很多问题,但也收获了很多经验,也是跟着公司的变大不断去适应不同的挑战。

引入 ngx_lua、二次开发、开源

EGO:能分享一下您在又拍云最有成就感的事吗?

张聪:公司成立以来,又拍云业务一直在不断快速扩张,在这个从小变大的过程中,肯定需要对架构进行改造和升级,否则就无法承受业务的增长,所以我们曾面临了一些技术选型的问题。

最早的时候,又拍云 CDN 用 Nginx C 模块进行业务开发,但它的维护成本很大。我们作为一家创业公司,就想选择开发尽可能方便、效率尽可能高的技术,经过多方考量之后,我们引入了 ngx_lua 项目。虽然当时 ngx_lua(下图)在国内没那么普及,应用也还不是很广泛,但我们觉得它非常符合我们的需求,就把它引入到了又拍云的 CDN 开发框架里了。

在创业公司,技术选型还是非常自由的,只要关键的核心技术人员能够胜任某些新技术,公司一般也会支持这些新技术以及架构上的调整。

引入之后,其实也遇到过很多困难,因为 ngx_lua 在国内的使用不多,很多资料都偏向国外,国内甚至很少能够找到交流的人,包括招人的时候,也很难招到相关的技术人员。我们是先自己摸索,慢慢地把线上系统从旧模式替换到新的模式。同时,我们也招了一些技术比较好的新人,从头培养,这样持续半年、一年之后,他们就能适应新的开发方式。中间也踩了很多坑、付出了很多代价,但当我们都跨过去后,整个 CDN 业务基础的开发环境也就顺利转变过来了。

这样,后续的开发、功能逻辑的迭代、维护都比之前轻松了非常多,而且在之后很多 CDN 功能的演进中,我们的效率都是比较高的。我们也总结出了很多文档,能给新来的技术同学学习,同时,这个项目在国内也越来越流行了,我们也能跟国内同行有更多的交流。

现在回过头来看,当初把 ngx_lua 引进公司,到后面 CDN 整个技术发展方向再到现在,这个选择是非常正确的,整体加速了开发节奏、节省了维护负担。对我们这样 CDN 领域的创业公司来说,就需要在条件有限的情况下选择一项更高效的技术。

这也是我印象比较深刻的一件事,对技术人而言,能经历这种引入一个新技术,到自己慢慢掌握它,再到能跟同行去分享,是非常有意义的一件事。

EGO:现在还在沿用 ngx_lua 吗?

张聪:还在用。但官方更新不一定能满足我们现在的需求,所以我们会在这个基础上加入自己的东西,做二次开发。

一开始我们只是拿来用,之后业务复杂了,我们就自己去修改它、完善它,跟它一起开发、发展。同时,我们也陆续在 github 上开源了几个相关项目,回馈社区。

EGO:能分享一下您踩过的坑、遇到的挑战吗?

张聪:其实踩过很多坑,我讲一个比较典型的。一般来讲,CDN 厂商承受的请求量、流量是非常大的,甚至远比中型站点的流量来得大。

在这个基础上,我们做一些功能的改造、新功能的发布的时候,就会面临很大的挑战。特别是功能的改造,就像是在一辆行驶得很快的车上换零件,业务量越大越有这种感觉,有些比较大的改造,往往还会涉及到系统的好几层。因此,我们很难非常干净利索地去做整个架构的调整、演进,只能是做好整个调整计划,然后把整个计划拆成 N 片,一点一点去做推进,就好像一个一个零件做替换一样。

其中,最大的痛苦是,因为 CDN 上有很多缓存,如果更换某个“零件”的过程中一旦出了问题,代价就会非常大。因为除了错误本身之外,这些错误还会污染到 CDN 上一些缓存系统,相当于你除了要修复 bug 之外,还要把被污染的缓存部分挑出来、清理掉,这是非常让人头疼的一件事情。用数据开发做比喻,就相当于你的数据被污染了,你修复了 bug 之后,还要挑出那些被污染的数据,再把它们修复掉。这个过程是非常费心费力,也非常折腾。
这是让我印象比较深刻的踩过的坑。又拍云也制定了各种方案,采取了人为的、系统的各种措施来减少这种事情发生的可能,比如现在我们改造之前,就需要经过多个精心设计的流程、观察各种数据指标,以保证过程的顺利。

CDN 服务的未来:安全、可定制化、自主配置

EGO:能分享一下 CDN 领域未来的趋势吗?

张聪:第一,CDN 可能不仅仅是简单的加速,还需要有一些安全防护方面的功能。你的网站会不会被攻击、别人是不是异常访问你的网站,这些都是 CDN 安全领域的内容。特别是大客户,他们对 CDN 安全方面的要求会非常高。同时,因为 CDN 是一张全国的网,它承受攻击的能力肯定要比用户的一个源站、单个节点的能力来得高,所以 CDN 上可以做好多安全相关的产品。

又拍云也在完善 CDN 安全方面的产品,在去年就推出了应用防火墙系统,一些简单的注入攻击、漏洞扫描,又拍云 CDN 网络就能帮用户挡掉这些风险。这是我觉得未来 CDN 发展的一个方向点。

第二,HTTPS 是未来的趋势。它的应用会越来越广泛,CDN 也就需要对此做出相应的变化。例如又拍云就推出了 HTTPS CDN 的动态证书调度,用户在我们后台简单配置一下他的域名,然后上传 HTTPS 证书,几秒之后就能全国生效,我们的边缘节点就会进行加载的证书、支持 HTTPS 访问,非常方便。

2016-10-25 02:27899

评论

发布
暂无评论
发现更多内容

Hadoop 3

爱好编程进阶

Java 程序员 后端开发

2020java面试题-chukou-chengzhang

爱好编程进阶

Java 程序员 后端开发

GC:你要用什么方式把我丢掉?

爱好编程进阶

Java 程序员 后端开发

GitHub上最牛逼的Java教程,标星yyds:算法

爱好编程进阶

Java 程序员 后端开发

Github上都在疯找的阿里内部“全栈技能修炼”终于来了

爱好编程进阶

Java 程序员 后端开发

JAVA为什么需要注解?

源字节1号

秒云助力上海金融信息技术应用创新联合攻关基地正式上线信创容器云平台

MIAOYUN

云原生 信创 智能运维 一云多芯解决方案

2022年开发者时间报告

翊君

40个W年薪蚂蚁团队Java岗技术4面分享:HashMap+线程池

爱好编程进阶

Java 程序员 后端开发

Apriori算法详解

爱好编程进阶

Java 程序员 后端开发

C++std命名空间和头文件详解

爱好编程进阶

Java 程序员 后端开发

Dubbo的超时和重试

爱好编程进阶

Java 程序员 后端开发

3 个方法,教你提升程序员的自我价值

爱好编程进阶

Java 程序员 后端开发

10个 解放双手的 IDEA 插件,少些冤枉代码

爱好编程进阶

Java 程序员 后端开发

HarmonyOS 94个JS/eTS开源组件首发上新,肯定有你要用的一款!

HarmonyOS开发者

HarmonyOS ArKUI 3.0

CGBTN2110-DAY07总结复习

爱好编程进阶

Java 程序员 后端开发

11-SpringSecurity:Session共享

爱好编程进阶

Java 程序员 后端开发

Byte和bit

爱好编程进阶

Java 程序员 后端开发

七大章节解读「中台」的前世今生

菜根老谭

中台 中台架构

Dropzone

爱好编程进阶

Java 程序员 后端开发

Flink与Spark Streaming在与kafka结合的区别!

爱好编程进阶

Java 程序员 后端开发

【ICDE 2022】稀疏模型训练框架HybridBackend,单位成本下训练吞吐提升至5倍

阿里云大数据AI技术

深度学习 推荐系统 开源项目

Docker:第二章:部署项目

爱好编程进阶

Java 程序员 后端开发

Github标星28K+,这款可视化的对象存储服务真香

爱好编程进阶

Java 程序员 后端开发

2021年阿里高频Java面试题:分布式+中间件

爱好编程进阶

Java 程序员 后端开发

2个月成功逆袭!最新分享阿里(Java岗

爱好编程进阶

Java 程序员 后端开发

33岁跳槽无路,濒临绝望受贵人指点,拼尽全力阿里offer在兜里

爱好编程进阶

Java 程序员 后端开发

7-21 求前缀表达式的值 (25 分)(思路详解)

爱好编程进阶

Java 程序员 后端开发

Builder构建者模式,将复杂对象的创建过程与其表示分离,活学活用才是王道

爱好编程进阶

Java 程序员 后端开发

Day308

爱好编程进阶

Java 程序员 后端开发

GitHub成功收获87

爱好编程进阶

Java 程序员 后端开发

又拍云张聪谈安全、HTTPS、自定义、CDN的未来趋势_音视频(后端)_EGO陈圆圆_InfoQ精选文章