1.3.2 云原生架构的提出
云计算使各种不同规模的企业都可以使用通用而普惠的计算模式,单位计算成本比以往任何时候都要低廉,并且随着技术的发展,单位计算成本还会不断下降。要想深度享用云计算带来的技术价值,应用必须基于新的技术架构进行升级改造,这个新架构就是云原生架构。
云原生架构不仅是底层云计算平台提出的诉求,也是如今业务快速迭代提出的诉求。一方面,在业界十五年来大量的上云实践中,迁移主要是采用re-host和re-platform的方式,如虚拟机代替原来的物理机、云文件代替本地文件、单体架构、瀑布模型开发等,这些技术显然无法获得像Serverless那样的弹性,自持有状态组件也面临着高可用和容灾的分布式复杂性挑战。
表1-1 现代化应用的特点
另一方面,如今企业对于数字化转型的认知度越来越高,需求也越来越迫切。这一切都缘于企业竞争环境的加剧。随着企业中越来越多的资产被数字化,整个业务流程将围绕数字化设施展开,业务部门总是希望业务能够覆盖所有的渠道,快速响应任何会导致用户体验下降的风险,随时推出新的业务以快速获得市场反馈,业务始终在线以服务全球各个时区的用户,等等。
对于企业的CIO或者IT主管而言,原来企业内部的IT建设以“烟囱”模式为主,每个部门甚至每个应用都是相对独立的,如何管理与分配资源成为一大难题。每个业务都是基于最底层的IDC设施独自向上构建,单独分配硬件资源,这就造成了资源被大量占用且难以共享的问题。将应用上云之后,云平台会提供统一的IaaS能力和云服务,以大幅提升企业IaaS层的复用程度,而CIO或者IT主管自然也会想到IaaS上层的系统也需要统一,以便资源、产品可以不断复用,从而进一步降低企业的运营成本。
这些技术演进、业务发展、IT管理的诉求,在云时代都需要企业采用新的云原生架构才能更好地解决。本书在后面的章节中会重点讨论云原生架构的方方面面,以帮助读者深入了解云原生架构的原则、主要架构模式、主流云原生技术和产品、云原生架构设计方法,以及一些行业的典型云原生案例。