前言:
微服务:将系统很多功能拆分成一个个小服务(就是很多工程)
服务网格:服务有多了,如果服务之间随意通信,就会形成蜘蛛网,乱七八糟,不好管理,(目前捷顺是人为避免server之间调用,各个业务系统之间也没有联系,唯一的联系是项目和组织,这些都在B门户,通过API接口来通信)服务网格就是处理服务之间的通信,让程序猿只需关注业务,类比于现在把网络分发和程序,程序不需要关注网络怎么分发,因为已经抽了tcp/ip出来,如图
服务网格就是在每个服务"旁边"加个东西,这个东西专门用来出流量处理与通信之类的,这个东西叫sidecar(边车,抗日剧中那种三轮车,很形象吧),如果有很多服务,每个服务"旁边"有个sidercar,sidecar用来通信,就形成了网格的样子,如图
注: 蓝色的是sidecar,绿色的就是(微服务)应用
第一代Service Mesh 的 代表为 Linkerd和Envoy
第二代Service Mesh 的 代表为 Istio
目前 第一代 都在为 Istio做支持,就是说第一代基本放弃竞争了,和Istio共同推进Service Mesh的发展,更牛逼的是Istio是由 Google、IBM 和 Lyft 联合开发