使用代理服务器除了服务器代理服务器软件需配置外(解读架构的 2021:服务网格开道,云原生架构成型)

本文是题为“2021 InfoQ年度技术盘点与展望”的系列文章之一,由InfoQ编辑部制作并呈现。重点介绍了2021年架构领域的重要进展和趋势,希望能够帮助您准确把握2021年架构领域的核心发展脉络,在行业内始终保持足够的技术敏锐性。

“InfoQ年度技术盘点与展望”是InfoQ全年最重要的议题之一,将涵盖架构、AI、大数据、大前端、云计算、数据库、中间件、操作系统、开源、编程语言十大领域。随后,聚合将扩展为专题、迷你书、直播周和收藏页,陆续在InfoQ media matrix发布。

感谢程、、、翁阳辉、杨昊然(按姓名首字母排序)对本文的贡献,他们的真知灼见是本文与大家见面的关键。

在过去的几年里,随着互联网的发展和业务的多样化,系统的架构也在不断变化。总的来说,经历了单一应用架构-垂直应用架构-分布式架构-SOA架构-微服务架构的演变。目前,头部互联网企业已经在向服务网格类的云原生架构演进。今天,我们借此机会盘点一下2021年建筑领域的各种技术。与云原生盘点不同,本文试图从架构的角度挖掘出不同的内容,希望对你有所帮助。

重点技术演进盘点

该架构涵盖了许多技术类别。本文选取了2021年几个突出的领域,如微服务、服务网格、无服务器、低代码、云架构等。,并进行年度回顾和趋势展望。篇幅有限,本文未提及的技术并非不重要。如果您对其他相关技术感兴趣,请给我们留言。

微服-服网:羽翼渐丰,日渐成熟



服务微生态图(来源:克里斯·理查森咨询公司)

如果要总结2021年的服务网格,那就是技术日趋成熟,生态逐渐完善,市场更加理性,价值本身回归。

一项新技术的发展基本上会符合技术成熟周期的规律,服务网格也不例外。2017年首次提出服务网格的概念,2018年正式爆发,进入服务网格技术元年。后来随着众多云厂商陆续进入市场,服务网格也达到了成熟度曲线的预期峰值。

接下来的两年,服务网格的设计过程比较曲折,但不乏突破性的创新。从早期放弃Mixer,到回归单一架构设计调整,以及后期对Web组装技术的支持等。,有一些重大的变化和调整或创新突破。

在过去的2021年,虽然服务网格仍然被Gartner评为处于技术发展的早期采用阶段,但业务和技术都取得了长足的进步。

从业务角度来看:

  • 服务网格产品和服务的国外专业提供商Solo公司披露,客户数量呈现强劲增长趋势(500%+环比增长),获得1.35亿美元C轮融资;
  • 另一家专注于提供服务网格产品和服务的国外Tetrate公司,获得B轮融资4000万美元;
  • 服务阿里云ASM产品的公有云客户数量比上年增长250%,客户数量突飞猛进。
  • 专注于提供服务网格产品和服务的国内初创公司Flomesh获得pre-A轮数千万人民币融资。
  • 从技术角度来看,Istio继续引领全球服务网格的发展。2021年9月,CNCF进行的一项最终用户调查显示,采用Istio的用户数量大约是采用Linkerd的用户数量的三倍。



    来源:cncf.io

    以刚才提到的当前主流服务网格技术选择Istio为例。开源社区和许多云供应商都在围绕网格技术进行持续优化。相比过去大刀阔斧的结构调整和技术突破,过去的一年似乎更加“务实”,解决了一些真实业务端的落地问题,比如性能优化、虚拟机支持、多集群多网格支持等等。

    2021年,服务网格Istio没有特别大的或者突破性的调整,而是更加注重技术本身的优化,重点解决实际生产中的落地问题。比如通过提高对虚拟机的支持来扩大基础设施的适配范围,通过引入智能DNS代理来解决iptable在大规模服务场景下的性能瓶颈,提高对多控制平面的支持,改善生产中的运维等。,都是比较真实的优化。这也是一种新技术,在经历了预期的扩张后回落到低谷,然后再次进入稳定的爬坡期。这是一个良性的过程,也意味着服务网格技术越来越成熟和稳定。

    其次,我们可以看到围绕服务网格的开源技术生态正在改善,围绕Istio衍生的开源生态有上升趋势,有很多创新。主要有两类。一种是将现有的技术或产品集成到服务网格生态系统中,比如为服务网格提供新的数据平面技术支持。另一类是为解决服务网格落地过程中的问题而衍生的工具或扩展支持,如配置优化、协议支持等。

    EBPF技术也更加完善,可以在内核层面进行优化,提高服务网格的性能和可观测性,各种服务网格数据平面的开源替代品,或者基于Istio控制平面的云原生网关等等。刚刚有开源项目解决服务网格生产落地中的扩展性、易用性等一些问题,比如位于服务网格智能管理器中的Slime项目,可以解决大规模的服务场景。Aeraki,用于管理Istio的七层负载,提供非侵入式协议扩展解决方案等等。这些都是基于服务网格Istio的,也是服务网格技术成熟的一种表现。

    如上所述,2021年,服务网格在业务和技术上都取得了长足的进步。Istio继续引领行业发展。除了可用性的巨大提升,还向业界展示了基于gRPC的无代理解决方案,清晰描绘了未来服务网格的终极形态。

    使用代理服务器

    "建筑不是一夜之间演变的,而是缓慢的."受访专家提到,目前微服务架构已经发展到第三代,即微服务的基础能力已经从一个服务框架演变为一个独立的进程Sidecar,实现了云原生微服务架构。被业界称为“下一代微服务架构”的服务网格,经历了前两年的“火热”。2021年,大家对网格的看法更趋于理性,回归技术是用来解决问题的本质。通过服务网格可以解决哪些问题?现有业务想上服务网格需要解决哪些问题?去服务网格后会有什么新问题?这些问题需要理性思考。好在对于这些问题,不同的云厂商都有丰富的经验和成熟的技术解决方案,可以值得关注。

    受访专家表示,2022年,企业对服务网格的态度不再是“技术是否成熟”,而是“应该走什么路径落地”。在落地的路上,技术债是企业面临的最大障碍。技术浪潮在带来红利的同时,也为企业创造了正视技术债务的大好机会。技术债是技术发展的自然产物。技术进步和发展的一个特点是,我们用新的思维,站在新的高度来解决过去、现在和近期的问题。

    无服务器:仰望星空空,脚踏实地

    “2021年的无服务器,可谓仰望星空空,脚踏实地,”受访专家总结道。

    落地可以说是server less 2021年发展的关键词。无服务器可以帮助开发者省去很多基础设施运维等杂务。但是,在什么场景下使用无服务器,如何将无服务器应用的开发和部署整合到现有的开发和维护流程中,如何调试和诊断无服务器应用等。,仍然是大多数开发者的主要问题。

    所以在2021年,所有的云服务商都在不断扩充无服务器产品线的能力。无服务器正在成为Web应用、微服务、事件处理、批量任务等场景中最受欢迎的架构。

    一方面,由于无服务器编程模式已经变得更加通用,如Google Cloud Run、AWS App Runner、阿里云函数计算/无服务器应用引擎等产品,支持实例对多个请求的并行处理、容器镜像等功能,基于Spring、Dubbo等流行框架的Web应用或微服务应用可以直接在无服务器平台上运行,无需修改。另一方面,无服务器平台在工具链和可观察性方面取得了很大的进步,使得开发者能够以更习惯的方式开发和操作无服务器应用。

    在落地场景中,以阿里为例,高德旅行通过无服务器架构实现的API后端服务,支持十一出行高峰时50万TPS的流量;公有云上的南瓜电影使用无服务器应用引擎,微服务7天无服务器。网易云音乐利用函数计算的极致灵活性,使得音频算法在业务上的落地速度提升了10倍。几个头部厂商的成功案例证明了无服务器的价值。

    此外,2021年,云服务商产品体系的无服务器化趋势越来越明显。不仅有AWS App Runner、Azure Container Apps等计算领域的产品,还有AWS Redshift Serverless、AWS EMR Serverless、AWS MSK Serverless、AWS Sagemaker Serverless等机器学习领域的产品。整个产品体系的无服务器化,体现了云厂商将无服务器视为云的未来的坚定承诺。

    2021年的Serverless还有一个值得注意的点,就是开源和开放。2019年,CloudEvents 1.0标准正式发布,为不同供应商之间的事件互通奠定了基础。2021年,无服务器工作流标准将按计划推出1.0 RC版本,这意味着正式的标准将很快出现在工作流领域。2021年11月,Knative正式发布1.0版本,达到生产环境可用。无服务器开放标准和开源软件的成熟对于消除无服务器的厂商锁定具有重要意义。

    关联阅读:

    从实践中了解无服务器的不同方面
    (https://www.infoq.cn/article/ThI2lzLS6F7f0R79A5hZ)

    无服务器的承诺都兑现了吗?
    (https://www.infoq.cn/article/MLKyYvB6dhjMeMB9WZtj)

    低码:垂直发展,更受认可

    低代码平台的概念最早由Forrester Research在2014年提出,Gartner将这一类别命名为基于aPaaS的高生产力平台(hpaPaaS)。随着西门子收购Mendix和Outsystems进行融资,低码平台正式进入大众视野,国内低码市场也进入快速发展期。

    谈到2021年国内低码市场的变化,受访专家表示主要有以下两个方面。

    接受度提高

    第一个也是最大的变化是接受度的变化。即随着业务的多样化,尤其是需要快速上线的业务,低码可以显著提高终端投放效率,行业对低码的接受度大大提高,低码的快速服务能力也得到认可。

    此外,不仅企业和市场对低代码的接受度变高,低代码平台的开发者也达成了共识。以前有些程序员认为低代码是他们的死敌,两者水火不容。慢慢的,程序员这个圈子逐渐接受了低代码可以释放程序员工作能量的观念。程序员联系核心开发,将简单或固化的服务交给低码平台进行开发,通过低码平台交付给业务部门,提高业务响应的效率。

    垂直发展

    第二个大的变化是低码逐渐从通用平台向垂直方向进化发展。

    低代码的特点是为了达到高效率的目的,需要做约束和抽象规范,这些都具有垂直行业属性。纯低码平台的效率不会太高。同样,单纯的低代码平台也无法满足企业的需求。广义的低代码正在覆盖更多的业务,开发者的范围也在扩大。这些问题不是单纯的低代码平台可以解决的。

    所以低代码一定要像垂直领域一样发展,才能更好的实现商业。另外,提高效率、降低成本的核心是重用。Low-code正在从纯技术组件级复用逐渐向纯业务组件复用的垂直方向发展。

    几个月前,Gartner发布了《2021年企业低代码应用平台魔力象限》。报告从多个维度对全球知名厂商进行了严格筛选。

  • OutSystems、Mendix、微软、Salesforce和ServiceNow被评为行业领导者;
  • 阿皮亚,甲骨文和Pega被命名为挑战者;
  • Creatio、Kintone、Newgen和Quickbase被评为利基市场参与者。
  • 根据Gartner的预测,“到2023年,超过70%的企业将采用LCAP作为其发展战略的关键目标之一。"同时,到2025年,整个LCAP(低代码开发平台)市场将达到290亿美元,年复合增长率超过20%。虽然低码已经成为行业热点,获得了足够的认可,但整体来看,目前国内低码仍处于发展初期,市场仍有很大潜力可供企业挖掘。

    值得关注的技术

    混沌工程

    今年11月11日,在混沌工程实验室主办的“混沌工程与系统稳定性主题沙龙”上,中国信通院解读了首份中国混沌工程调查报告。

    该报告主要指出:

  • 国产软件系统的稳定性可以大大提高空,企业期望构建一个完整的、可测量的系统稳定性保障体系;
  • 混沌工程是提高产品可用性的有效手段,是建立稳定性的技术核心。
  • 目前工程应用成熟度较低,在企业中的普及度和渗透率较低。
  • 随后,在今年12月21日举行的数据安全产业峰会上,中国信息通信研究院发布了《混沌工程实践指南(2021)》,首次提出了混沌工程的实践体系。混沌工程的重要性不言而喻。阿里巴巴开源ChaosBlade、PingCAP开源chaosmaesh、字节腾讯亚马逊等企业在混沌工程方面也有很深的实践。从几年前被质疑到今年越来越多的实践,混沌工程已经证明了它的价值。



    工程学的混沌进化时间线(来源:亚马逊云技术博客)

    工程混沌的重要事件参考:

  • 2010年,网飞开发了混沌猴项目,并向社区开放。
  • 2015年,网飞正式提出混沌工程原理;
  • 2016年,混沌工程的商业产品开始出现。
  • 多云建筑

    数字化加速了企业上云的进程。此外,随着企业业务的多样化,云化成为必然趋势。

    多云建筑主要有以下优点

  • 灾难恢复和故障转移:企业使用云平台来管理所有资源是有风险的。当一个云出现故障时,其他云可以接管工作负载并促进快速恢复。
  • 避免供应商锁定:云化可以让企业发掘不同的供应商,从不同的云平台选择服务,定制符合企业目标的基础设施;
  • 主权:欧盟和很多国家都通过法律来监管数据存储的位置和方式,被约束的公司可以通过多云的方式保证数据符合监管要求;
  • 降低成本:合理规划多个云平台之间的工作负载分配,可以有效降低整体成本。
  • 然而,云化并不是一切,仍然存在重大的部署挑战。复杂环境、成本管理、数据隐私和保护、数据控制访问和跟踪等。都是企业面临的问题,也是云厂商要解决的问题,所以是否选择云架构的形式要根据公司目前的业务情况。

    展望未来

    云原生技术的发展势不可挡,“云原生”这种老生常谈在未来仍将是热门话题。随着数字化转型的加速,企业对云的使用将达到新的水平,云原生架构和云原生应用将不断迭代进化。

    无服务器

    在云原生的第一阶段,云使能开发者随时使用海量计算能力,支撑了移动互联网等行业的崛起。目前,我们已经进入了云诞生的第二阶段。云的使命是重塑云原生应用的开发和运营模式,帮助开发者获得前所未有的敏捷性和创新能力。

    2022年,开发者会听到越来越多关于现代应用的概念。现代应用是一种安全、快速的软件开发方法,在应用架构、开发过程、可观察性和安全性方面采用了新的理念。

    现代应用的核心是微服务和事件驱动架构的松耦合架构。微服务和事件驱动架构的概念并不新鲜,但是很多开发者想要很好的落地,还是面临很大的挑战。主要原因是这种将应用拆分成细粒度、松耦合架构的方式给基础设施的运维带来了巨大的挑战。

    因此,云服务提供商需要提供越来越多的全托管产品,以便开发者可以基于全托管服务通过构建块来实现应用。最后,应用的运维将演化为无服务器模式,即不再管理基础设施,从而大大降低开发和运维的复杂度。

    DevOps

    DevOps是实践现代应用的关键。云厂商和开源社区都围绕DevOps提供了很多软件。2022年,受访专家认为,将会出现越来越多的工具,帮助开发者整合应用开发、部署、运维、监控等各个方面的工具。,实现清晰流畅的软件交付工作流程。

    Backstage.io等开源软件使开发者能够轻松访问共享的软件开发组件、API文档和模板化的工作流,整个团队以一致的方式构建和部署应用,这对提高软件交付的速度和质量是非常有价值的。

    服务网格和云本地架构

    从客观上看,服务网格试图将服务之间的通信和治理下沉到基础设施上,实现业务开发和运维的解耦。随着多运行时概念的引入,它还试图通过抽象和隔离上层应用程序开发中的运行时依赖来进一步解耦开发设计和技术能力的底层实现。

    在受访专家看来,或许云原生应用开发的愿景是尝试使用一层标准化的API抽象定义,让用户可以开发基于不同语言的云原生应用,屏蔽对基础技术、底层运行环境的外部依赖。从而不受厂商和平台的限制,实现跨云和跨平台的可移植性。

    除此之外,设计和思路都具有前瞻性。从新业务的角度来说,大胆尝试新技术,设计新架构,是一种很好的探索,试错成本比较小。但现实中,很多商家面临着大量的历史存量,转型迁移困难,这是很多商家最头疼的问题。

    这些问题导致企业在云原生架构的道路上迈出了沉重的一步。受访专家提到& # 34;混合架构治理& # 34;是一个需要重点关注和解决的难题。好在目前很多厂商都在做相关产品的落地设计。

    写在最后

    回顾这一年,建筑领域的重大新闻事件没有其他领域那么多,但各种技术也取得了长足的进步。服务网格越来越成熟,无服务器落地实践场景越来越多,低代码平台更受认可,云原生架构初具规模。展望更长远的未来,新技术创新和旧技术淘汰是必然趋势,服务网格和无服务器都是云原生技术浪潮中的重要组成部分。也许有一天,这些技术会进一步相互结合,让用户只关注真正意义上的业务逻辑的设计和开发,实现“一次编写,随处运行”的终极目标。

    面试嘉宾介绍(按姓名首字母排序):

    程朱郭,字节跳动架构/服务框架团队负责人;
    李云(花名:智健),阿里云高级技术专家,服务网格私有云负责人;
    景甜,华为技术专家;
    网易数字粉丝云原生团队翁阳辉,高级技术专家;
    杨浩然(花名:卜弋),阿里云高级技术专家,阿里云无服务器负责人。

    您可以还会对下面的文章感兴趣

    使用微信扫描二维码后

    点击右上角发送给好友