现在的Java程序员如果说不了解Spring Cloud,一定会被别人嘲笑,毕竟微服务是现在的热门。在IT领域,尤其是微服务相关的名词层出不穷,今天为大家简单介绍下Istio。
众所周知,Spring Cloud吸纳了很多Netflix公司开源的产品,比如服务注册Eureka,网关Zuul,限流熔断Hystrix等等来实现微服务的治理。可是,谷歌这家公司推出了一个强大的Kubernetes,简称K8S。有了K8S之后,Eureka的职责就可以被K8S中的服务取代了。这相当于替代了Spring Cloud中的一部分。那这和Istio有什么关系呢?
Istio主要是Google,IBM与Lyft共同研发的新一代微服务治理框架,其实现了Service Mesh。Service Mesh的初衷是为了让服务治理的粒度更加细致,不论是日志管理,流量控制都追求完美。K8S Service的出现取代了Eureka,Istio的出现则是让K8S Service给自己打短工,似乎更加有点蔑视Spring Cloud的意味。
为什么这么说呢?Istio内部是使用了K8S的,但为了细粒度的进行日志管理和流量控制,K8S Service自身都无法满足设计要求。于是,Istio只是通过K8S API收集了Service信息便自己接管了后续的工作,流量转发控制权交给了由C++开发的Envoy。这个高性能的组件就是传说中的Istio Sidecar,也就是每一个微服务实例所在Pod中必须注入的另一个容器啦,而这个Sidecar的追求是对应用本身透明。到这里,大家知道Istio的野心了么?
网友评论