MOSN(Modular Open Smart Network)-00-聊一聊 MOSN

前言

大家好,我是老马。

sofastack 其实出来很久了,第一次应该是在 2022 年左右开始关注,但是一直没有深入研究。

最近想学习一下 SOFA 对于生态的设计和思考。

sofaboot 系列

SOFAStack-00-sofa 技术栈概览

MOSN(Modular Open Smart Network)-00-简单聊一聊

MOSN(Modular Open Smart Network)-01-是一款主要使用 Go 语言开发的云原生网络代理平台

MOSN(Modular Open Smart Network)-02-核心概念

MOSN(Modular Open Smart Network)-03-流量劫持

MOSN(Modular Open Smart Network)-04-TLS 安全链路

MOSN(Modular Open Smart Network)-05-MOSN 平滑升级原理解析

MOSN(Modular Open Smart Network)-06-MOSN 多协议机制解析

MOSN(Modular Open Smart Network)-07-Sidecar 模式

MOSN(Modular Open Smart Network)-08-MOSN 扩展机制解析

MOSN

1. 定义与背景

MOSN(Modular Open Smart Network)是由蚂蚁集团(原蚂蚁金服)于2018年7月开源的一款云原生网络代理平台,使用Go语言开发。

其核心定位是为服务提供分布式、模块化、可观察且智能化的代理能力,主要应用于Service Mesh的数据平面(https://github.com/sofastack/sofa-mosn)(https://mosn.io/)。名称中的"Open"和"Smart"体现了其开放生态与智能化流量管理的特点。

MOSN的诞生源于微服务架构演进中的痛点,例如多语言中间件适配成本高、SDK升级困难、服务治理能力不足等。

蚂蚁集团通过自研MOSN,将服务治理能力下沉至Sidecar,实现了业务逻辑与通信逻辑的解耦(https://www.sofastack.tech/projects/sofa-mosn/concept/smooth-upgrade/)。


2. 核心模块与架构

MOSN的架构设计遵循OSI分层思想,分为以下模块与层级:

架构采用工厂模式分层设计,各模块通过接口暴露功能,便于扩展(https://mosn.io/blog/code/)。


3. 技术特点与优势


4. 应用场景


5. 与同类产品的对比

  • Envoy(C++):

    • 语言优势:MOSN使用Go语言,开发效率高且内存安全,心智成本更低(尤其对Java/Go开发者)(https://mosn.io/blog/code/)]。
    • 协议扩展:MOSN提供统一的多协议框架,私有协议接入成本更低(https://mosn.io/blog/code/)]。
    • 流量劫持:Envoy依赖iptables,而MOSN通过端口注册实现透明劫持,升级方案更优(https://mosn.io/blog/code/)]。
  • Linkerd/NginxMesh:

    MOSN活跃度更高,且经过双十一等大规模场景验证(https://mosn.io/blog/code/)]。

MOSN凭借其模块化设计、高性能及云原生集成能力,已成为Service Mesh领域的重要开源项目。

随着社区生态的壮大,未来将进一步推动云原生网络技术的标准化与普及。

小结

希望本文对你有所帮助,如果喜欢,欢迎点赞收藏转发一波。

我是老马,期待与你的下次相遇。

相关推荐
项目題供诗2 小时前
黑马k8s(四)
云原生·容器·kubernetes
杰克逊的日记2 小时前
大项目k8s集群有多大规模,多少节点,有多少pod
云原生·容器·kubernetes
小张童鞋。2 小时前
k8s之k8s集群部署
云原生·容器·kubernetes
luck_me52 小时前
k8s v1.26 实战csi-nfs 部署
linux·docker·云原生·容器·kubernetes
Cxzzzzzzzzzz2 小时前
Kafka Go客户端--Sarama
中间件·golang·kafka·linq
Paraverse_徐志斌4 小时前
Kafka 如何保证消息顺序性
分布式·中间件·kafka·消息队列
hnlucky5 小时前
《基于 Kubernetes 的 WordPress 高可用部署实践:从 MariaDB 到 Nginx 反向代理》
运维·数据库·nginx·云原生·容器·kubernetes·mariadb
_板栗_5 小时前
livenessProbe 和 readinessProbe 最佳实践
云原生·容器·kubernetes
struggle20255 小时前
continue通过我们的开源 IDE 扩展和模型、规则、提示、文档和其他构建块中心,创建、共享和使用自定义 AI 代码助手
javascript·ide·python·typescript·开源
Ramseyuu7 小时前
Mybatis-plus
微服务·云原生·架构