怎么理解Service Mesh

技术怎么理解Service Mesh这篇文章主要讲解了“怎么理解Service Mesh”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么理解Service Mesh”吧

本文主要讲解“如何理解服务网格”。本文的解释简单明了,易学易懂。请跟随边肖的思路,一起学习学习《如何理解服务网格》!

时代0:开发人员想象中,不同服务间通信的方式

抽象如下:

怎么理解Service  Mesh

时代1:原始通信时代

然而,现实远比想象的复杂。实际上,通信需要底层能够传输字节码和电子信号的物理层。在TCP协议出现之前,服务需要处理网络通信面临的一系列流量控制问题,如丢包、乱序、重试等。因此,在服务实现中,除了业务逻辑之外,还混合了网络传输问题的处理逻辑。

怎么理解Service  Mesh

时代2:TCP时代

为了避免每个服务都需要自己实现一套相似的网络传输处理逻辑,出现了TCP协议,解决了网络传输中的一般流量控制问题,下移技术栈,将其与服务实现分离,成为操作系统网络层的一部分。

怎么理解Service  Mesh

第三代:第一代微服务

TCP出现后,机器之间的网络通信不再是难题,以GFS/BigTable/MapReduce为代表的分布式系统蓬勃发展。此时,分布式系统特有的通信语义再次出现,如融合策略、负载均衡、服务发现、认证授权、配额限制、跟踪监控等。因此,服务可以根据业务需求实现一些所需的通信语义。

怎么理解Service  Mesh

时代4:第二代微服务

为了避免每个服务都需要自己实现一套分布式系统通信的语义功能,随着技术的发展,出现了一些面向微服务架构的开发框架,如Twitter的Finagle、脸书的Proxygen、Spring Cloud等。这些框架实现了分布式系统通信所需的各种通用语义功能,如负载均衡和服务发现等。从而在一定程度上屏蔽了这些通信细节,使开发人员能够用更少的框架代码开发健壮的分布式系统。

怎么理解Service  Mesh

时代5:第一代Service Mesh

第二代微服务模型看似完美,但开发人员很快发现它也有一些本质问题:

首先,虽然框架本身屏蔽了分布式系统通信的一些通用功能实现细节,但是开发人员要花费更多的精力去掌握和管理复杂的框架本身。在实际应用中,跟踪和解决框架中的问题并不容易。

其次,开发框架通常只支持一种或几种特定的语言。回顾文章开头对微服务的定义,一个重要的特点就是语言独立性,但是那些用没有框架支持的语言编写的服务很难集成到面向微服务的架构体系中,也很难根据本地情况用多种语言实现架构体系中的不同模块。

第三,框架以lib库的形式与服务捆绑在一起,复杂项目依赖时库版本的兼容性非常困难。同时,框架库的升级不能对服务透明,服务会因为与业务无关的lib库升级而被迫升级。

于是,以Linkerd、特使、Ngixmesh为代表的代理模式(sidecar模式)应运而生。这是第一代的Service Mesh,将分布式服务的通信抽象为单一层,在该层实现分布式系统所需的负载均衡、服务发现、认证授权、监控跟踪、流量控制等功能。作为等同于服务的代理服务,它与服务一起部署,以接管服务流

怎么理解Service  Mesh

如果我们从全局的角度来看,我们将得到下面的部署图:

h">

如果我们暂时略去服务,只看Service Mesh的单机组件组成的网络:

怎么理解Service Mesh

相信现在,大家已经理解何所谓Service Mesh,也就是服务网格了。它看起来确实就像是一个由若干服务代理所组成的错综复杂的网格。

时代6:第二代Service Mesh

第一代Service Mesh由一系列独立运行的单机代理服务构成,为了提供统一的上层运维入口,演化出了集中式的控制面板,所有的单机代理组件通过和控制面板交互进行网络拓扑策略的更新和单机数据的汇报。这就是以Istio为代表的第二代Service Mesh。

怎么理解Service Mesh

只看单机代理组件(数据面板)和控制面板的Service Mesh全局部署视图如下:

怎么理解Service Mesh

至此,见证了6个时代的变迁,大家一定清楚了Service Mesh技术到底是什么,以及是如何一步步演化到今天这样一个形态。

现在,我们再回过头来看Buoyant的CEO William Morgan,也就是Service Mesh这个词的发明人,对Service Mesh的定义:

服务网格是一个基础设施层,用于处理服务间通信。云原生应用有着复杂的服务拓扑,服务网格保证请求在这些拓扑中可靠地穿梭。在实际应用当中,服务网格通常是由一系列轻量级的网络代理组成的,它们与应用程序部署在一起,但对应用程序透明。

这个定义中,有四个关键词:

  •  基础设施层+请求在这些拓扑中可靠穿梭:这两个词加起来描述了Service Mesh的定位和功能,是不是似曾相识?没错,你一定想到了TCP;

  •  网络代理:这描述了Service Mesh的实现形态;

  •  对应用透明:这描述了Service Mesh的关键特点,正是由于这个特点,Service Mesh能够解决以Spring Cloud为代表的第二代微服务框架所面临的三个本质问题。

感谢各位的阅读,以上就是“怎么理解Service Mesh”的内容了,经过本文的学习后,相信大家对怎么理解Service Mesh这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/91876.html

(0)

相关推荐

  • 刷抖音点赞网网址,点赞下单平台?

    技术刷抖音点赞网网址,点赞下单平台?抖音粉丝排行榜,抖音粉丝是怎么来的,抖音粉丝多了怎么赚钱,抖音粉丝怎么变多,抖音粉丝怎么涨,抖音粉丝多少钱一个,抖音粉丝最多的人,抖音粉丝量怎么增加,抖音粉丝少怎么办?
    抖音上有很多人

    测评 2021年10月26日
  • vue中如何实现后台进程定时爬取头条文章

    技术vue中如何实现后台进程定时爬取头条文章这篇文章将为大家详细讲解有关vue中如何实现后台进程定时爬取头条文章,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

    攻略 2021年11月24日
  • 抖音刷点赞最靠谱的-怎么样刷抖音粉丝

    技术抖音刷点赞最靠谱的-怎么样刷抖音粉丝抖音刷点赞最靠谱的-怎么样刷抖音粉丝
    在抖音,内容是王道,无论你是想通过别的什么方法涨粉,最直接、涨粉效果最快的永远是内容!
    抖音怎么涨粉点赞
    对于大部分抖音玩家来说,涨粉都是一件

    测评 2021年11月13日
  • 美容医院排行,苏州排行第一的整形医院是哪家

    技术美容医院排行,苏州排行第一的整形医院是哪家苏州解放军第一00医院整形美容中心创建于1915年,迄今已有近百年的历史,医院坐落于古城苏州风景秀美的沧浪亭畔,建筑风格典雅的门诊楼美容医院排行、住院楼、疗养楼、康复楼与著名

    生活 2021年10月30日
  • Spring Boot怎样集成Redis

    技术Spring Boot怎样集成Redis本篇文章给大家分享的是有关Spring Boot怎样集成Redis,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

    攻略 2021年10月27日
  • 铝怎么拼音,氮化铝是什么,有什么用途啊

    技术铝怎么拼音,氮化铝是什么,有什么用途啊中文名称:氮化铝拼音:danhualv英文名称:alumin(i)um nitride分子式:AlN分子量:40.99密度:3.235g/cm3说明:AlN属类金刚石氮化物,最高

    生活 2021年10月29日