【架构】Service Mesh

文章目录

概述

Service Mesh 公认的定义,是用以处理服务与服务之间通信的专用基础设施层。更本质的理解,它是服务治理平台,是业务逻辑解耦的必然产物,是数字经济背景下企业对研发效能提升的选择。

服务端架构从单体模块化架构,到 SOA(面向服务架构),到经典微服务架构(服务间采用 RPC 通信),到最新的 Service Mesh,就是一个不断强调解耦和复用的演进历程。

  • 单体模块化架构强调业务逻辑按模块划分
  • SOA 强调业务逻辑在应用粒度的复用(水平拆分)
  • 经典微服务架构强调业务逻辑在应用粒度的解耦(垂直拆分)
  • Service Mesh 则强调业务逻辑与服务治理逻辑的分层及解耦

Service Mesh 是所有架构模式中解耦和复用最彻底的,它不仅仅强调业务逻辑的解耦和复用,更强调基础设施的解耦和复用。

传统通过 Spring Cloud 实现服务治理的方式,服务治理与业务逻辑耦合在一起,部署、运维都耦合了微服务本身的操作。比如一个 RPC 框架的 bugfix 会引发所有微服务旷日长久的升级发布,同时带来业务开发人员开发、测试、回归、发布的巨大重复工作量。而 Service Mesh 通过将与业务逻辑无关的服务治理逻辑下沉,让业务开发人员与基础技术开发人员关注点分离,各司其职,大大提升了研发效能。

微服务架构对比

Rainbond与ServiceMesh

ServiceMesh架构框架是工作在网络通信层面提供一系列服务治理功能,包括:

服务发现和负载均衡

高级路由

通信监控和分析

通信安全

对于Rainbond的架构设计来说还通过插件扩展的方式增加以下方面功能:

日志处理

数据备份和恢复

服务运维和监控

服务运行环境保障

Rainbond原生提供全量的ServiceMesh治理功能方案,同时提供了插件化得扩展策略,用户除了使用默认方案以外也可以自定义插件实现。Rainbond与Istio的实现有共同点,也有天然的不同。

相同点是都实现了基于XDS规范实现全局控制层,支持envoy和istio-proxy。

不同点是Istio需要依赖Kubernetes等平台工作,微服务架构的支持需要从底层存储与通信到上层的应用层配置全盘考虑,大型的微服务架构是离开不了自动化管理应用的PaaS平台的。Rainbond从硬件层,通信层,平台层实现不同的控制逻辑,既兼容已有的微服务架构,同时提供了完整的ServiceMesh微服务架构实践。包容的架构形式让已有的应用服务化变得可落地。

Rainbond提供给用户的体验是最大化的透明,即用户将服务运行于Rainbond即已经构成了微服务架构,而无需先学习微服务架构知识,再考虑自己的服务如何改造,最后再落地。
如下图可知,Rainbond的网络治理插件通过Sidecar的方式在应用的同一个网络命名空间,同一个存储空间,同一个环境变量空间内动态启动第三方插件服务,例如envoy服务,通过与Rainbond应用运行时通信完成从应用空间到平台空间的数据交换,实现平台对应用通信的控制。

来源

ServiceMesh微服务架构简介
Service Mesh 深度集成 service mesh 架构
到底什么是 Service Mesh ?如何评价 Service Mesh ?

相关推荐
小丑依然是我17 小时前
终端 AI 助手的上下文压缩与持久化记忆设计
架构·openai
uzong17 小时前
架构师的必修课:分布式系统发布理论设计要点
后端·架构
张忠琳18 小时前
【vllm】(二)vLLM v1 Engine — 模块超深度逐行分析之二
ai·架构·vllm
无忧智库18 小时前
智能工厂信息化顶层架构设计:一套真正落地的体系该长什么样(PPT)
架构
梦想的旅途218 小时前
解构私域自动化架构:基于 RPA 协议的中台设计与实现
架构·自动化·rpa
WJJAGI19 小时前
烧了 30 亿 token 之后,我决定不让 Hermes 自己改配置了
架构
疯狂的魔鬼19 小时前
从 5 个 Hooks 到注册表模式:Vue 3 复杂详情页的架构演进与原则沉淀
前端·架构
ekuoleung19 小时前
Spring Boot 3.4 + Java 21 在量化平台中的架构实践
java·架构
中小企业实战军师刘孙亮20 小时前
组织赋能+体系搭建,破解中小企业增长困局-佛山鼎策创局破局增长咨询
架构·产品运营·音视频·制造·业界资讯
isNotNullX20 小时前
数据架构是什么?数据架构和其他架构的区别是什么?
大数据·微服务·架构