你好,我是何恺铎,一个云计算的爱好者、践行者、布道者。欢迎你加入这个专栏,和我一起探索云计算的宏大与美妙。
先简单介绍一下我自己。在职业生涯的早期,我曾在摩根士丹利的应用程序基础架构部门工作,在那里从事高性能数据处理组件和类库的研发。
我们部门所构造的框架和“轮子”呢,会作为可复用的组件,用来构建摩根最为关键的各类金融市场实时交易程序。从这个角度看来,我当时的工作内容,与如今云计算的一些中间件服务颇为类似。
大约十年前,我加入了国双科技,历任技术经理、技术总监、技术总经理,工作内容上我从“造轮子”转而开始做应用,尤其是构建面向互联网的各类大数据应用,比如用户行为分析、舆情社交聆听产品等。在漫长的研发岁月中,我和你一样,看遍了编程语言、框架类库的兴衰更迭,在基础设施层面,也经历了从物理机到虚拟化,再到云计算的梦幻旅程。
正是在这一个时期,我开始接触到云计算,并在工作中不断地加以实践和应用。从陌生到熟悉,从喜欢到痴迷,云的强大和高效使我成为了不折不扣的云计算狂热者。在业余时间,我也会在电脑前一遍遍地反复研究各个公有云的新发布特性,并思考它能否为我所用,为正在构建的应用发挥价值。
我也曾发表过一些和云计算相关的文章,比如去年在InfoQ发表的万字长文《激荡十年:云计算的过去、现在和未来》曾入选虎嗅当月的全行业精选,也获得了业内媒体的广泛转载。我还有一个公众号“云间拾遗”,点滴记录着我在云计算之旅中的实操和感悟。
现在,终于有一个专栏课程的机会,能让我系统地把自己对于云计算的认知进行梳理,并以面向开发者的方式呈现。我很珍惜这个宝贵的机会,我会尽可能地分享与云有关的知识体系、最佳实践,甚至自己的经验教训。
所以,这会是一个注重实用的云计算专栏,它为我们开发者而生。希望你一起“上车”,共同开启云计算之旅。
云计算,不仅是一个妇孺皆知的技术热词,也早已成长为一个巨大的行业。根据Gartner的报告,全球公共云服务市场在2019年已经突破两千亿美元。毫无疑问,历经多年的发展和成熟,云计算已经成为一种潮流,也是现代企业数字化转型中的重要组成部分。
产业的发展必然影响个体。那么,问题来了,这一趋势对于我们开发者而言意味着什么?
这意味着,未来我们的代码,和我们构建的应用,将越来越多地运行在云上;它还意味着,我们的架构模式和思维方式,将更多地与云契合共生。因此,我们必须学习了解云,以适应在云上构建应用的新时代。
另一个你应当学习云计算的原因,在于效率。现代社会的节奏飞快,业务需求多如牛毛,而且瞬息万变。更快更稳定地构建和交付,成为开发者的核心竞争力。云就能够帮助你做到这一点,触手可及的庞大资源规模、高度自动化的各类服务、可重用的基础组件,都会是你提高效率的好帮手。
另外,在日常工作和社区交流中,我发现许多开发者对于语言、框架和类库都比较重视和了解,毕竟这是每天接触的工具。但大家往往对于云的特性却还不够熟悉,导致在资源配置、技术选型和架构设计等环节没有选择最佳的方案,造成稳定性或是成本上的损失。如果对云计算有足够的理解,这些损失是完全可以避免的。
还有一部分开发者,在过去尝试过云计算的产品或服务,但由于早期云产品不成熟或者使用方式的问题,无意识地形成了一些误解甚至偏见,比如出于思维惯性,会觉得云虚拟机的硬盘性能低下,但事实并非如此。要知道,云计算的发展并非一蹴而就,而是历经多年逐步发展成熟的。所以,在2020年,你也可能需要来刷新一下认知,了解云的最新能力与动态。
以上种种,共同构成了开发者应当认真对待和系统学习云计算的原因。这是云计算最好的时代。而在云的赋能下,这也应该是开发者最好的时代,是新时期优秀开发者的制胜之道。
那么,面对云计算这样一个宏大的课题,我们应该怎样入手学习呢?
市面上存在的云计算类书籍与课程,大致可分为这样几种:
我一直在想,能不能有更加适合开发者的云计算课程呢?毕竟,开发者才是云计算的最终用户啊。
所以,我希望这个专栏有所不同,有它的鲜明特点:
所以在我们的后续内容中,我们将同时以阿里云、AWS和微软Azure为主要研究对象(因为这三家正是全球云计算三甲),再结合穿插腾讯云、华为云等优秀云服务作为案例进行讲解。如果你之前只是熟悉一个云,希望这样的方式也能够破除单个云的信息茧房,让你拥有更广阔的视野。
需要说明:这个专栏将以讲解公有云为主,私有云暂不涉及。不过不用担心,公有云和私有云的许多理念和实现都非常类似,颇有相通之处。所以这个课程对于你了解学习私有云也能有不小的帮助。
在每篇课程有限的篇幅中,我还会非常注意加入一些实操的内容,而非仅仅作概念解释和纸上谈兵。因为接地气的动手实验能帮助形成更直观的认识,和理性的解读一起参照,可以强化和加深对知识的理解。
另外,云和传统IT架构方面的一个显著差别在于成本:云的成本是非常动态的,会更多地由应用架构和技术选型所决定。换一句话说,云让我们开发者离钱更近了。因此我认为成本是云端的一个重要话题,所以成本意识和成本控制技巧也将贯穿这个课程的始终。毕竟,能为公司和项目省下真金白银,和赚取利润同样关键。
以上几点,是我觉得开发者在学习云计算时应有的要点,也正是我们这个专栏的定位和撰写思路了。
我们知道,现代云计算是由大大小小、形态各异的云服务所组成。业界通行的做法,是将它们大致划分为IaaS和PaaS两个领域。
注:广义上的云计算,还可包括SaaS(Software as a Service,软件即服务)的内容,一般指基于云构建可开箱即用的各种业务应用。这是另一个宏大的领域,我们这个开发者课程就不予以关注和讨论了。
所以在专栏内容上面,我们的课程也会遵循这样的方式来划分,分为IaaS篇和PaaS篇,各自为你精心挑选了领域内最重要的若干话题。
这个专栏并不会对你的先验知识有很高的要求,只要你有一定的计算机基础和研发经验,对体系结构、操作系统、数据库、编程语言等常见内容有一定了解就可以了。云计算本就是各领域技术的抽象和组合,所以全面系统地学习云计算对提升你的专业综合素养也是大有裨益的。
当然,作为一个力求“深入浅出”的课程,在覆盖了广度的前提下,篇幅所限,我无法去深度讲解每一个相关领域的基础知识。比如说,云数据库会是专栏的重要章节,但显然我不会去教授MySQL或者PostgreSQL,你需要订阅其他专栏来学习这些数据库本身。不过,我会力求讲清每一个领域在云端的差异化特点和最佳实践。
以上就是我对于自己以及这个专栏的介绍了。云计算其实并不困难,也没有那么神秘。只要你跟随专栏认真学习,我相信一定会有所收获。你会对于云计算的产品和能力形成一个清晰的宏观认知;也会了解到一些重要细节和实践经验;最后也是最重要的,回到你自己的生产场景,你将能够判断和决定如何正确运用云的力量。
所以,请坐稳扶好,我们马上就要启航了,方向:广阔云端。
在每篇课程的末尾,我都会给你留下思考题,或是动手操作的实验,欢迎你来参与和交流。这个开篇词也不例外:
欢迎你在留言区和我互动,我会第一时间给你反馈。如果觉得有收获,也欢迎你把这篇文章分享给你的朋友。我是何恺铎,感谢你的阅读,我们第一讲再见。
© 2019 - 2023 Liangliang Lee. Powered by gin and hexo-theme-book.