2021年7月2日,阿里巴巴云用户组(AUG)的第一次离线活动在阿里巴巴Yunyun的高级专家Jinan.li Guoqiang举行,并结合了他自己的微服务的经验,并分享了演变和应用实践实践的经验在现场有数十家山东公司的数十家山东公司的“微服务”中。根据作者的现场演讲,这篇文章是在现场编写的。
在企业中,它是运营和维护或开发,但最终一切都是为了解决业务问题。如果您做一件事,只有技术目标,没有业务目标是普遍的。
什么样的业务需求将促使公司考虑微服务?
随着体系结构的发展,当您的业务变得越来越复杂,越来越多的组成部分时,每个业务组成部分的独立要求或技术堆栈的异质性越来越高,您需要考虑Micro -Microserve。换句话说,如果这项业务是一个相对稳定的,又不大的挑战,则无需进行微服务转换。
在最早的微服务上,它实际上是主要项目。当前的微服务没有以其他语言(例如Java系统的双重级别的两个四分之一)放置在Java系统中,但实际上,有很多微型- 服务框架可供选择其他语言,例如PDP,例如PDP。
在整个后端开发中,Yunqi会议已经在帐户系统的统计数据之前进行了统计数据。50%的投票是由Java Back -End Development开发的。但是现在,公司正在变得越来越多样化,Java的地位已更改。其中的类型以及不同业务线的需求是不同的。一些业务线可能是Java;一些业务在前端框架上有偏见,该框架将使用PAP和Python。企业来自企业。M&A还将带来各种系统。
多个数据的解决方案是使用各种维度或新技术形式,然后使用容器化。微服务带来的许多问题是通过容器解决的。包括微服务器,有些人可能会直接放弃。当负责人看到双重系统时,他使用K8SS服务来为此操作做曝光单元。优点是它与该语言无关。在任何系统中,都可以是K8S服务。但是,使用微服务后,将会有更多问题,我们需要管理这么多业务组件。
K8S本身并不强大,只是为了进一步解决这个问题并引入更多的网格技术。越来越多的公司去年开始进行网络网络,包括使用服务网格服务网络来解决交叉语言研究和服务治理。也是一种称为DAPR解决供应链依赖性的更新技术。
可以发现,应用程序体系结构的演变是一家不断提出问题,然后产生新框架的业务。新框架可能会引入新问题,并不断促进技术的运行。
整个阿里巴巴都完全采用了上述过程,由于业务的迅速发展,技术团队一直在挑战。php是世界上最早的语言。淘宝购物中心实际上是PHP。但是,在业务发展之后,淘宝的数量变得越来越快,不仅不能支持这项业务,而且PHP本身的扩张能力无法忍受。
2009年,阿里(Ali)首次从事分布式业务。ALI正式从单个业务更改为分布式业务。当时,该卷相对较大,没有十一次,但是它为Ali的内部做出了贡献,可以进行自己的分布式框架。在分布式服务框架外,还有一些分布式数据库和分布式相应的法规。它们在里面被称为三辆马车。
到2011年,Ali开始探索容器化,这是首先完成的T4项目,该项目已实现为容器化技术,并最终成为袋子的容器化。这也是根据集装箱标准实现容器化的实现。这反映了微服务带来的操作和维护挑战。容器是一个很好的解决方案。
到2013年后期,整个Oracle在ALI的脱机中包括小型机器,所有这些机器都成为他们自己的开源技术堆栈。2015年开始,Ali全面接受了云本地技术,包括向外界开放容器技术,以及整个整个云技术系统逐渐加深。从2016年到2019年,Ali构成了云云,包括完全接受的K8S系统以及微服务的转换和治理。
在此期间,我们要做的是图片上图的最后阶段:基于对服务点的基于网格的支持,多语言变得越来越普遍。ALI拥有许多来自外部合并的业务。Ali的原始技术策略都是Java。在外部合并中合并的用户非常不友好,因为他们不能很好地重新启动并必须适应Java。因此,我们最近在做的是新一代的基于网格的微型服务体系结构的发展。将有一些技术使微服务的框架更好地支持多元化的支持,包括治理。
Dubbo 3.0在6月底发布了最新版本,实际上是一个非常颠簸的项目。2008年,Dubbo在内部正式发布,并于2011年正式开放。过去,Dubbo和HMPK在Ali内部,但Ali希望Ali希望它是在技术上统一的。有两种技术,双方都无法互操作。这是两个技术堆栈,所以我进行了PK,Apache Dubbo赢了,所以Ali目前是Apache Dubbo。这也是中国最热门的Apache框架。,阿里的内部投资较少。通过2017年,我们的中间件团队再次商业化并重新启动了整个Dubbo开源,因此Apache已从完整的项目发布到几天前。
该项目非常活跃,当前的贡献和使用率非常高。Dubbo3.0实际上已经做了很多事情来接受一些最新想法,例如对服务网格的支持,其协议也更好地兼容GRP,并制作了一系列新的服务发现模型。中国使用了2.7和2.6版。3.0发行后,许多公司使用它一旦使用它。当时没有发布它,社区中的用户开始测试3.0。
必须赞扬的另一件事是云系统。它和Java微服务当前是最受欢迎的。弹簧云系统的优点是组件非常丰富。在过去的两年中,Dubbo一直从IPC框架到主流服务器,以及Spring Cloud的开始是为了支持相关的微服务数据部。
随后,阿里巴巴制造了春天云阿里巴巴,阿里巴巴是Ali开源的一系列中间件,包括双重注册中心,配置中心,Flow Limited Transaction Law和Transactions,以帮助用户解决现在提到的微服务系统中的各种问题。
Micro -Service是一个整体系统,而不仅仅是一个简单的呼叫框架。Micro-服务遇到了每个人的着陆过程中遇到的问题,Ali非常重视它。带有阿里巴巴云的SDK包装结合了这两个部分。主要目的之一是帮助用户使用Spring Cloud System。另一个目的是帮助用户在阿里巴巴云上更好地运行弹簧云。因此,这是阿里巴巴的云。
大多数用户都知道中间件,例如NACOS,Sentinel等。实际上,云的某些产品具有很好的基础。我们还将与其他公司共同开发并继续发展项目。由于Ali,我们会认为这是开放的来源和商业化同样重要。团队需要同时承担开源项目和商业化服务。
微服务不是免费的,它将带来很多复杂性的改善,包括选择服务框架和注册中心的稳定性。当客户足够大时,他将面临一个大问题,即稳定性注册中心可能成为企业的瓶颈,包括应用程序监控,统一配置管理,任务计划和其他一系列事物。
在此过程中,对整个企业的挑战仍然相对较大。并非每个企业都有能力移动整个微服务的所有开发组件。如果所有这些组件都是运行和维护的,那么要求相对较高。因此,更多的是,我希望公司更加担心关于业务的某种相对偏见,并且云制造商可以通过其他方式解决,或者如果企业足够强大,它也可以通过开放的方式来解决。
刚才我提到的是,春天云和Dubbo非常易于使用,但是实际上存在问题,也就是说,SDK的升级将变得非常困难,因为此升级对业务没有价值,而且业务党不愿意合作。这次系统在2.6中有一个错误,需要将其升级到2.7版。这次,由于他引用了SDK,因此需要促进业务团队。如果他有错误或增强功能,您,您需要在SDK中执行此操作。目前,商业党通常不愿意。阿里内部的问题也存在。
实际上,这涉及一个相对较大的话题,即,业务开发人员和基础设施运营的边界是属于业务人员或基本知识的最终界限。这个问题非常抽象。这是每个人的责任边界的问题。业务开发人员认为,通过操作和维护对SDK进行测试,因为我只需要界面,剩余更新,治理,工程和业务开发。操作和维护人员必须允许研发人员与商业研发合作。这是一个模糊的边界,不可避免地会有冲突。
因此,从云的角度或从计算的角度来看,当我们讨论SO所谓的软件体系结构速度和基础架构容量丰富的问题时,我们可以降低所有功能和所有与运输没有相关功能的功能维多利亚团队是一个一直在想的问题。我在练习中经历了几代人:
服务网格是服务治理和交通治理框架。在原始设计中,它是业务的一部分,以上是业务代码,以下是这些功能。服务网格可以做的最重要的事情是剥离这些功能进入ISTIO的功能。该商务是纯业务功能。边界非常清楚。服务治理和交通治理框架将由运营和维护团队提供服务。
最终的真正框架是什么?开发人员和业务人员之间的边界在哪里?我们绘制了理想的框架。
目前,您可以让您的企业开发人员使用他喜欢的语言来开发他想要的业务,并且不再关心所有这些基础设施团队所需的问题。这实际上来自应用程序框架或微服务。最终目标。
当我们进行微服务时,我们将遇到一些问题。一种解决方案是在全国范围内进行自我建设,对于某些公司而言相对较大。AlibabaCloud会将其中一些变成产品以提供产品。例如,如果您要构建微服务,则需要配置功能,网关和治理能力。阿里巴巴云将使用产品的形式直接提供给您,因此您无需自己构建它。好像我自己是由我自己构建的,现在影响他的数据是不同的。现在,这是您最初构建的NACO的云产品。
服务网格的产品技术可能是去年发布的,但实际上,真正降落生产的公司仍在尝试。阿里巴巴云也是如此。使用产品来减少服务网格的使用,因为网格只是许多公司的技术概念,并且该公司需要多样化的微服务。用户进入服务网络。
上海的商品技术正在做各种物联网设备。它遇到的问题是内部技术框架和语言系统更为复杂。各种语言和服务都遇到了困难。希望这些企业可以在发布时进行统一的流量管理,包括流量管理,因此它最终选择使用服务网络来解决多个微服务。从可以看出,这些业务价值,例如更新迭代,异常调查以及控制表面资源的成本,它已得到了极大的优化。
以上是微服务的进化和实际共享。我希望系统的梳理为您带来一些微服务。
资料来源:阿里巴巴云
