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领域的重要开源项目。

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

小结

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

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

相关推荐
分布式存储与RustFS4 小时前
RustFS S3 Table 开源后,我重新梳理了一下 Iceberg 数据湖的选型思路
人工智能·开源·minio·dpu·rustfs·ai存储·s3 table
梦梦代码精5 小时前
2026年PHP开源商城系统实测对比:架构、多商户、商用授权,谁才是真·省心?
vue.js·docker·架构·开源·代码规范
冬奇Lab6 小时前
每日一个开源项目(第127篇):PM Skills Marketplace - 把顶级产品方法论塞进 AI Agent
人工智能·开源·资讯
鹤落晴春7 小时前
【K8s】Pod调度、configMaps
云原生·容器·kubernetes
张忠琳7 小时前
【runc 1.4.2】(Part 2)runc 1.4.2 超深度分析 — CLI层:main.go、命令文件、runner、信号处理、TTY
云原生·kubernetes·runc
阿里云云原生10 小时前
AI 提效是“假象”还是“红利”?用 LoongSuite + SLS 构建组织级 AI 编码度量看板
云原生
tyung10 小时前
Go 手写 Wait-Free SPSC 无界队列:无 CAS、无锁、泛型节点池
数据结构·后端·go
Java识堂11 小时前
如何对微服务进行拆分?
微服务·云原生·架构
Plastic garden13 小时前
K8s知识(3) Pod亲和性,调度
云原生·容器·kubernetes