Service Mesh——下一代微服务架构

Service Mesh——下一代微服务架构

定义

根据Linkerd CEO William Morgan定义,Service Mesh是用于处理服务间通信的基础设施层,用于在云原生应用复杂的服务拓扑中实现可靠的请求传递。在实践中,Service Mesh通常是一组与应用一起部署,但对应用透明的轻量级网络代理。
在这里插入图片描述

架构难题

我司采用的微服务架构基于Thrift通信,为了提供一个全局通用的通信协议,把这些与协议、路由等相关的操作封装在内部基础库上,像Netflix、Twitter等SOA/微服务的早期采用者,他们通过建立内部库的方式处理这些问题,然后提供给所有服务使用一样。
这种方法的问题在于,把库扩展到成百上千个微服务中难度极高,而且这些库相对来说是比较”脆弱“的,每次需要升级基础内部库,对众多微服务来说,虽然有容器支撑,也是一种小灾难~~
而Service Mesh提供了一种解决困境的思路和统一方案。