从服务治理以及分布式发展史的角度剖析Service Mesh的精髓
在软负载的世界里,分布式是一个非常重要的领域,世界在变,软负载领域也在变化。早在10年以前,技术大咖们基本都把精力集中在中间件领域,比如Spring、Mybatis、Struts等,根本不会考虑服务集群的统一管理和调度。Service Mesh目前之所以这么火,其实本质上与计算机、分布式、服务的发展有很大的关系的,也是技术发展必须要经历的过程。
单机小型机时期
集群化时期
服务化时期
微服务时期
服务网格(Service Mesh) 新时期
单机小型机时期
大而统一的巨无霸应用
单机应用垂直拆分
计算机摩尔定律-单机性能瓶颈
商用IBM机器成本太高
集群化时期
从高端的商用IBM机器切换到普通的PC
硬件负载均衡瓶颈
机器资源的最优配置问题
软件负载均衡
服务化时期
从应用到服务
远程调用(RPC)
管理复杂的服务依赖关系
服务治理
服务治理的软负载产品,比如Duboo的ZooKeeper注册中心,SpringCloud的Eureka注册中心,服务治理主要维护提供者和消费者之间的映射关系(订阅关系)。
旁路负载
微服务时期
服务细化
架构轻量级
分布式架构的演进,微服务是一个分水岭,此时工程师才真正的意识到分布式架构本身的复杂性,微服务化之前,分布式都是往做多做细方向发展,比如集群化、服务化、服务治理化等,都是架构扩展演进。然而微服务在细化的同时,首次提出轻量级,在微服务化之后,分布式架构进入架构收缩的过程,架构本身的复杂度针对业务工程师是无感知的。
服务网格(Service Mesh)新时期
多语言的差异性
指数级的系统架构的复杂度
Sidecar设计(Linkerd)
Docker助力Sidecar
第一代服务网格
从数据逻辑层面上解决了微服务关系混乱的问题,但是并没有实现配置控制,解决了Sidecar的连接性问题。
第二代服务网格
增加了服务的配置控制功能,比如Istio
Service Mesh 商用方案
以蚂蚁为代表的开源系 SOFA
以华为为代表的自研系
以腾讯为代表的拿来主义
以UICloud为代表的适配系
Istio
打个广告: