微服务替代了单体架构,它可能会替代微服务架构!
坚持原创,写好每一篇文章
我们知道docker建立在宿主机上,kubernetes又是建立在docker之上,微服务通过k8s来治理,进行扩缩容,微服务是我们现在比较流行的技术架构,然而微服务也面临着一定的问题,那就是服务之间的调用,于是出现了Service Mesh服务网络。
边车
它引入了边车的概念,也就是微服务中的服务的注册和发现、负载均衡,服务追踪、认证、熔断重试这些功能抽离出来作为边车,也具体服务的业务相分离,这样服务之间进行网络通信的时候就是边车之间的通信,这就是service mesh,服务之间的通信组成了一个网格的形式。
控制面板
服务网络还分成了数据面板和控制面板两部分,数据面板就是由我们说的边车组成,数据面板对于我们应用服务来说是透明的,而控制面板的功能就是与边车进行交互,可以理解为它是这些边车的领导者,在控制面板中有很多组件,各司其职,有的负责服务的发现、流量的管理和扩缩容,有的负责控制面板策略的下发还有的负责安全验证这一块。
下面这张图希望你对服务网络的整体设计有所理解
Istio
Istio是服务网格的具体实现,我们可以使用kubernetes来安装Istio,然后开启边车功能,Istio自带可视化的界面Kiali,不过比较简陋,还有很多功能需要完善,通过Kiali可以查看服务之间的调用关系。
总结
这篇文章我们讲了服务网络的整体设计,它由控制面板和数据面板组成,控制面板下发策略给数据面板,数据面板有个很重要的概念是边车,边车就是将微服务中的服务发现、流量监控、熔断、限流、安全验证等功能进行整合,而服务只关注业务就可以了,数据面板做到了与业务服务的透明化,架构的演进都是不断让架构与业务相分离,服务网格还在不断发展中,我相信它会在某天替代微服务。
❤️ 感谢大家
如果你觉得这篇内容对你挺有有帮助的话:
- 欢迎关注我❤️,点赞????????,评论????,转发????
- 关注
盼盼小课堂
,定期为你推送好文,还有群聊不定期抽奖活动,可以畅所欲言,与大神们一起交流,一起学习。 - 有不当之处欢迎批评指正。