【深度专访AWS云端架构策略副总裁】冲刺数位转型企业需要什么IT新架构
他是打造Netflix全球服务架构的关键人物。早在2009年,当时担任Netflix网站工程总监的Adrian Cockcroft,就开始率领团队藉助AWS云端基础架构,来改造Netflix的IT架构。这个关键基础建设,更助Netflix奠定了全球影片串流服务的龙头地位。Netflix还大方公开了这套转型上云端的经验,甚至打包自己开发的工具和架构设计範本,开源释出了NetflixOSS平台,这也成了设计云端原生架构的最佳实务参考之一。
当时,Adrian Cockcroft被誉为比AWS更懂得善用AWS的架构师,更有云端第一架构师的美称,科技圈也将他选入云端运算年度十大关键人物之一。
Adrian Cockcroft不只熟谙云端技术和软体技术,他更是高效能电脑技术的专家,曾在昇阳电脑任职长达16年,最后成为昇阳高效能工业计算(HPTC)部门的首席架构师。2004年离开昇阳,转而进入eBay,成为eBay Research Lab创始团队一员。早在iPhone和Android手机问世之前,Adrian Cockcroft就开始研发自製手机和先进行动应用。
他在2007年进入Netflix,负责Netflix首页和个人化选片服务,也参与了SOA架构的导入。2010年成为Netflix云端架构长,率领12人团队重新设计资讯架构,打造出Netflix云端新架构,后来成为微服务架构的经典。
2014年,Adrian Cockcroft转而进入Battery Ventures创投担任技术院士,从更宏观的角度,来观察科技产业、网路新创、创新技术的发展。2年前进入AWS担任云端架构策略副总裁,不只带领AWS的开源推动工作,也开始到各国分享自己一路参与云端架构发展的经验。趁Adrian Cockcroft近日来台之际,iThome特别专访他对云端架构趋势与企业数位转型关键的观察。
Q:为何当年Netflix敢决定把关键网站搬上云端?A:大胆是Netflix根本的文化。一部份来自公司领导高层,特别是创办人Reed Hastings,他是很愿意投入创新尝试的人。Netflix喜欢做「不易複製」(Hard copy)的事,就是别人看到会想複製,但又很难複製的事,Netflix也很享受这样的作风。
Q:当时你如何说服管理阶层,接受全上云端的策略呢?A:不是我说服他们,反而是管理团队来说服工程团队,要採取「全上云端」的策略。Netflix当时有两项主要业务,一是DVD出租服务,其次是影片串流服务。串流服务的发展非常快速,对于运算有很大的需求。管理团队当时最大的烦恼是,运算能力的扩充速度,能不能支持业务的成长需求。
从DVD租片到串流服务,是一种数位转型带来的需求改变。就好比,一家零售业者,过去透过零售店面来销售产品,就算店面扩张到上百家,IT的运算力,只需要扩充到足以满足这一百家店面就够了。但是,经营型态数位化后,IT不只要支援生产或销售所需的系统,还需要直接满足第一线的终端顾客。
过去租片业务,IT只需考虑几百家店的连线存取需求,但串流服务不一样,得直接服务顾客,这是数百万名顾客以及数百万个播放装置的挑战规模。从支援数百个用户端,到有能力支持百万等级规模的连线需求,而且是随时上线的需求。IT得面临,不只是几倍成长的挑战,而是上千倍成长的冲击。这是所有面临数位转型企业共通的挑战。
Q:但为何是管理阶层发动转型,而不是IT?A:Netflix管理阶层也颇有技术能力,这是部分原因。但关键原因是,这是Netflix当时最大的风险,IT若无法支持扩充需求,公司就会失败。
Q:台湾不少企业也想拥抱数位转型,管理阶层要有技术能力,才能顺利启动吗?A:不一定必要。如何解决商业上的问题,是企业永远的课题。不能只看到有新科技,就想用,虽然这可能很有趣,但企业不应该如此。企业要去解决商业的问题。企业可分成三种,多数企业儘管追求效率,但只是一种不想落后对手的态度,这是安全牌的企业。但有些企业则是有种什么都要抢第一,这是领导型企业,Netflix就是这类企业,想要抢占市场大宗,各种类型的顾客都要满足,虽然只是少数,但AWS会找出这群顾客,花时间了解他们的需求,因为安全牌顾客后来都会想要具备领导型企业的能力。
Netflix就是那种率先冲进丛林打头阵开路的领导型企业,多数人则是想走在这条开拓出来的道路,安全地前进。第三种则是落后型企业,忽然才发现,大家都往前进了,自己才开始担心如何跟上队伍。
Q:除了业务面的转型,IT架构如何改变,来满足转型所需?A:Netflix在自家资料中心部署的内部系统(on-premise),都是大部头式(monolithic)的大型系统,我们把它打破成一块块小型服务,再部署到云端成为各种微服务。Netflix上云端就是从大部头系统到微服务的转型之路。
Q:上云端转移,花了多久时间?A:至少花了2年,光是前端系统上云端,就花了1年,包括从学习如何拆解,后来脚步比较快,但也花了一年才将后端系统和资料库搬上云。前端系统和后端系统分成两阶段来进行。在资料中心的运作,其实很慢,资源调度和分配得花很长的时间,技术改变的脚步也很慢,打造各种内部流程,希望稳妥完成工作,但你就是在打造一套缓慢的大系统。大部头系统就是这样的系统,所有的改变都相互绑定在一起,因为你不得不如此。
当你希望缓慢稳定前进时,大部头系统是对的架构。但是,在云端,几分钟就可以增加一台机器,你应该藉由做「小事」来提高效率,所以,要打破成微服务型态,因为每一小块服务,都可以独立且快速地改变。对速度的需求,系统自然发展成最理想的架构。(编按:Neflix仍有少数资料在本地端,直到2016年)
Q:你自己设计出整套新架构吗?A:不,我率领了一个12人团队,我们一起打造出所有的新架构。
Q:第一步从哪里开始?你当时几乎没有前例可参考?A:改变要从最简单的地方开始。因为你必须藉此学习新技术、新平台和新模式,来了解如何上云端部署任何事情。第一步要从最简单的工作开始,然后才逐渐尝试更複杂的工作,逐渐就会学会新技术,也会熟悉新平台。Netflix服务是网站,我们从最简单的那一个网页开始,一次一页。最后才是最複杂的那一页。同时有两套系统并行,一开始用户浏览Netflix网站时,有些网页在资料中心内执行,另一些则是在云端。几乎花了一年才全部搬上云,但透过转址切换,顾客其实不会发现。
Q:这个作法现在还适用吗?如果台湾企业想把自家系统搬上云端?A:是的,我认为还适用。就算你的网站再複杂,还是一次搬一页最好。但现在可能比较容易,因为企业的行动应用,多半会不只用到资料中心提供的后端API,也会用到不少云端服务的API,这会让转移工作变得更容易一些。但基本原则是要採取渐进式作法,一次转移一个功能。
Q:你从Netflix学到什么经验?至今仍适用吗?A:我从Netflix上云学到的第一个经验就是,Netflix先为了追求速度而展开优化转型,也因此而赢得市场,因为可以比市场上任何人都跑得更快。速度致胜,至今不论那个产业都还是如此,跑得快的人可以赢得市场。Uber、Lyft、Airbnb、Expedia都是因为云而速度很快的公司。世界现在变得更快,技术也是,更要善用这些技术来加速自己。
很多公司是自己绑住自己,自己设置了很多内部门槛,其实可以简单一点,不要花了6个月才做出决定,但只用1个礼拜就完成工作。利用科技只需1周时间的工作,却耗上数个月,这就是问题。所以,第二项经验是,产品开发过程要尽可能减少摩擦。快速决策是数位转型的其中一项关键,要让各种决策的发生,更加自主和自动化,
Amazon有个披萨团队的比喻,团队要小又独立,10个人左右刚刚好,产品经理、维运、开发人员都组队在一起,共同让产品更好。保持独立运作,但要和产品相关的团队保持联繫。这也是我在Netflix看到的工作模式,去除磨擦,就可以加速决策,这正是让企业组织变快的方法。
第三项经验是「最高信任,最少流程,避免工作在团队间轮流接棒。」写完一段程式码,何时才能上线执行?传统企业得花上好几个月,但在现代化企业,可能只要几分钟,不用开会,只需一张工作单发动任务,透过持续整合、持续派送自动化完成。
要衡量一个组织的绩效,要用创造价值的时间(Time to Value)来评估,对开发团队而言,就是看一段程式码从提交(Commit)到上线执行,花了多久时间。这是最好的绩效指标,任何影响,最后都会反应到这个指标上。
例如越少开会,这个时间就能越短。有些企业得花上几个月,甚至程式码写完永远无法抵达顾客,因为专案最终还没上线就取消了。今天写完,明天上线,这是对开发者最好的奖励,也能让你的产品持续改善,每一天都变得更好,这是一个新世界。
Q:非科技公司,尤其是传统企业也能适用这样的快速开发模式吗?A:所有企业,现在都是科技公司。Netflix其实是内容产业,不只用前所未有的方式来拍摄电视剧,还用更有效率的方法来製作,也比任何人更能瞄準受众。过去只能用猜测,但Netflix现在可以清楚知道每一部电影,有多少人看,谁在看,都能知道。Netflix再用这些资料来优化业务所打造的内容,科技只是负责派送和记录,看电视才是Netflix真正的生意,科技只是工具。
任何非科技公司,都能複製这样的模式。就算是食品业,儘管仍旧需要在实体世界生产、製作和运送食物,但你对顾客的了解越多,甚至透过直接销售的方式,来掌握顾客的特性,你就越能优化你的生产过程,甚至改变商业模式。数位转型就是回到基础,思考企业商业模式的改变。
尤其现在许多产品连上网路,不只可以与顾客有更多联繫,也可以让产品来告诉你要如何改善,许多智慧家电就是如此。这是一个商业模式的大改变,也需要开发应用程式来辅助这件事。
Q:开发新应用最好直接採用微服务架构吗?A:不,现在开发新应用,最好优先採用Serverless架构。可以快速完成你的App,再持续根据顾客需求来优化。例如服务网路流量很大,可以改租用PaaS来分摊部分Serverless上的服务。或你需要快速回应的App,就专注于优化网路延迟。但使用Serverless服务,设计出你的应用系统的第一个版本,只需要几天。Serverless架构就是要排除中间的障碍,让你尽快尝试技术。
Q:採用Serverless架构的代价是什么?A:应用程式的设计得有一定的妥协,来适应Serverless服务可以提供的功能。
就像要打造一款玩具太空梭,传统作法是你得先设计太空梭玩具的原型,再用黏土来複製每一个零件模型,接着用黏土模型来铸造出每个零件的模具,就可以大批铸造生产零件,再来组出一台台太空梭玩具,这就是传统的瀑布式开发流程,得花上几个月才能开发一套系统,再部署到不同环境或各地据点中。
但新的快速开发模式(Rapid Development)截然不同,而是改用乐高积木来组合太空梭,几个小时就能组装出一个太空梭玩具。这台乐高太空梭仍旧可以玩,颜色搭配也可以长得像是当初设计的原型,但精细程度比不上铸造组装的版本。你得和乐高积木提供的那几种积木型态妥协。这就是用Serverless的代价,得适应Serverless提供的功能选择,但带来的好处是,可用(依旧可玩)、可靠(坚固)、容易局部调整,而且快速完成。这是我最喜欢的比喻。
你要了解各种功能型服务的能耐和限制,如AWS提供的SQS、Kinesis、S3、DynamoDB,以及AWS Lambda等,这些都是AWS上实现Serverless架构的积木,研究如何组合这些服务,来解决你的需求。
相关报导 企业IT飙速关键大公开免责声明:本文由用户上传,如有侵权请联系删除!
猜你喜欢
- 吃凤梨上火还是降火(cf雷神好还是黑龙好)
- 售楼小姐挣钱吗(真赚钱售楼小姐的一个月工资多少)
- 机动战士高达OOV(审判者纳德雷高达)
- 儿子结婚邀请函简短大气(儿子结婚邀请函简介介绍)
- 小鱼儿与花无缺林志颖版本(小鱼儿与花无缺林志颖版的现在怎么看不了了)
- msduo记忆棒(MSD记忆棒是什么东西啊)
- 巴西最重要的矿产资源(巴西最大的铁矿山是.","titletext":"巴西最大的铁矿山是.)
- 药水哥的直播在哪里看(药水哥在哪直播简介介绍)
- 我想要军装下的绕指柔得全部番外可不可以给我一份呢(我邮箱xinya12@sina.com)
- 爸爸见义勇为的作文(结尾处感想100字怎么写)
- 战鼓电影结局是什么(战鼓这部影片讲的是什么)
- start(king fx和shinee一起来的是哪期)
最新文章
- 个性标签写什么好8个字(个性标签8个字简介介绍)
- 贴吧和i吧有什么区别(贴吧和i吧有什么区别)
- 东北话得细小是什么意思(东北话小得得是啥意思)
- 太姥山旅游最新攻略一日游(太姥山旅游线路)
- 12月有什么好电影上映(12月上映好看的电影)
- 妒海主题曲百度云(泰剧妒海的主题曲和片尾mp3格式的谁有谢谢)
- 元奎在好莱坞拍过多少电影(指导过多少电影 都叫什么)
- 怎么关闭wps删除提示(wps屏幕提醒怎么关闭简介介绍)
- 4399弹弹堂vip折扣券(4399弹弹堂怎么刷点券啊)
- 企业天猫入驻条件及费用(天猫入驻条件及费用简介介绍)
- 尹相杰母亲是马玉涛吗(尹相杰母亲是马玉涛吗)
- 冬至应该吃什么食物(冬至应该吃什么食物)
- nokia6600复刻版本(NOKIA6630~~~)
- 新年快乐日语怎么说(新年快乐日语怎么说)
- 工作交接清单怎样写,格式是怎样的(工作交接清单怎样写格式是怎样的简介介绍)
- 为什么我的梦幻诛仙人物快捷键用不出来(求高手解答 我换了很多台机子了)
- 三星note3开不了机(三星note1手机为什么开不了机)
- 迅雷种子怎么提取(前缀是什么)
- poison(ivy 什么意思)
- 魔法卡片掉卡规则(魔法卡片中怎么没有变闪卡的卡友)
- 眼部结构简图(眼部结构简介介绍)
- 武汉外高国际部学费(武汉外高出国)
- 湖南台为什么叫马桶(湖南台为什么叫芒果台)
- 公元前10000年是什么年(公元前10000年)