10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

又拍云张聪谈安全、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:271337

评论

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

Android | 音视频方向进阶路线及资源合集

轻口味

android 音视频 9月日更

博睿数据亮相 2021 服贸会,以智能运维赋能数字化体验

博睿数据

应急响应篇:windows入侵排查

网络安全学海

黑客 网络安全 信息安全 WEB安全 应急响应

王者荣耀商城异地多活架构设计

feitian

首发10万字Mysql实战文档,几乎涵盖你需要的所有操作|超清PDF

今晚早点睡

Java MySQL 程序员

架构1期模块七作业

五只羊

架构实战营

王者荣耀商城异地多活架构设计

木云先森

架构训练营

面试官:为何Redis使用跳表而非红黑树实现SortedSet?

Summer

Java 数据库 redis 学习 程序员

openLooKeng+Ranger+LDAP 认证鉴权能力演示

LooK

大数据 openLooKeng Ranger

Go- 文件读写-2

HelloBug

文件读写 Go 语言

详解微信异步队列 MQ 2.0 的功能优化及拓展思路

OpenIM

【VueRouter 源码学习】第六篇 - 路由匹配的实现

Brave

源码 vue-router 9月日更

ipfs矿机挖矿原理是什么?ipfs矿机怎么搭建?

ipfs矿机挖矿原理是什么 ipfs矿机怎么搭建

【数据库】数据库访问控制策略包含哪些?都一样吗?

行云管家

数据库 阿里云

浪潮云洲×明风机械:让工业“哑设备”发声

云计算

玩转TypeScript 工具类型(上)

有道技术团队

typescript 大前端 客户端

如何拥有自己的openLooKeng?超详细的安装配置指导看这里

LooK

模块七作业

Clarke

运维工程师主要是做什么的?和网络工程师有啥区别?

行云管家

云计算 运维 网络 IT运维

CSS架构之tool层

Augus

9月日更

为什么行业老大经常和老二合并?

石云升

市场垄断 9月日更

又一款Nginx 管理可视化神器!通过界面完成配置监控,一条龙

Summer

Java nginx 学习 程序员 IT

SEO行业的困境:转型还是夹缝中求生存

石头IT视角

实时移动通信中基于时空域联合约束的低照度视频增强技术

OpenIM

Go- 数据格式解析

HelloBug

json xml Go 语言 gob

弱网下的极限实时视频通信

声网

音视频 编码 极限视频通信

数据中台是什么?

奔向架构师

数据中台 数据仓库 9月日更

华为云GaussDB(for Redis)发布全新版本,两大核心特性正式亮相

华为云数据库小助手

性能调优 GaussDB GaussDB ( for Redis ) 华为云数据库

模块7

Geek_ywh40v

如何从业务中抽取出通用性模板或框架-通用权限管理框架

张音乐

Java 设计模式 9月日更

网络攻防学习笔记 Day130

穿过生命散发芬芳

数据安全 9月日更

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