如何让服务治理的策略在多语言之间复用呢?
可以将服务治理的细节从RPC客户端中拆出,形成一个代理层单独部署,这个代理层可以使用单一的语言实现,所有流量都经过代理层,来使用其中的服务治理策略。这就是Service Mesh的核心思想。
什么是Service Mesh
Service Mesh主要处理服务之间的通信,主要实现形式就是在应用程序同主机上部署一个代理程序,我们将这个代理程序称为sidecar(边车),服务之间的通信从客户端和服务端直连变成:
![](https://img.haomeiwen.com/i6271376/9103c619d13c3bea.png)
RPC客户端将数据包先发给,与自身同主机部署的Sidecar,在Sidecar中经过服务发现、负载均衡、服务路由、流量控制之后,再将数据发往指定服务节点的Sidecar,在服务节点的Sidecar只,经过记录访问日志、记录分布式追踪日志、限流之后,再将数据发送给RPC服务端。
网友评论