在微服务架构下,为什么我们需要istio
刚不久阅读了一下istio的简介,就我个人感受来说,istio主要具备如下功能
-
Metrics(延迟,成功率等)
-
分布式链路追踪
-
客户端负载均衡
-
熔断
-
流量迁移
-
限速
-
访问日志
要说Metrics,分布式链路追踪,我们有skywalking,zipkin,Spectator等APM工具,
客户端负载均衡 我们有K8S自带的service负载均衡
熔断有sentinel,hystrix
那为什么我们还要使用istio? 我认为它主要的优势在于,它把这些功能和应用剥离开了,无需更改应用级的代码,不管服务使用哪种语言编写可以很好的集成进去。
它对于流量的控制达到了颗粒级别,让我们对应用的控制更加细节。