孔季雅 发表于 2025-6-1 20:31:52

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

前言

大家好,我是老马。
sofastack 其实出来很久了,第一次应该是在 2022 年左右开始关注,但是一直没有深入研究。
最近想学习一下 SOFA 对于生态的设计和思考。
sofaboot 系列

SOFABoot-00-sofaboot 概览
SOFABoot-01-蚂蚁金服开源的 sofaboot 是什么黑科技?
SOFABoot-02-模块化隔离方案
SOFABoot-03-sofaboot 介绍
SOFABoot-04-快速开始
SOFABoot-05-依赖管理
SOFABoot-06-健康检查
SOFABoot-07-版本查看
SOFABoot-08-启动加速
SOFABoot-09-模块隔离
SOFABoot-10-聊一聊 sofatboot 的十个问题
MOSN 简介

MOSN(Modular Open Smart Network)是一款主要使用 Go 语言开发的云原生网络代理平台,由蚂蚁集团开源并经过双 11 大促几十万容器的生产级验证。
MOSN 为服务提供多协议、模块化、智能化、安全的代理能力,融合了大量云原生通用组件,同时也可以集成 Envoy 作为网络库,具备高性能、易扩展的特点。
MOSN 可以和 Istio 集成构建 Service Mesh,也可以作为独立的四、七层负载均衡,API Gateway、云原生 Ingress 等使用。
核心能力


[*]Istio 集成

[*]集成 Istio 1.10 版本,可基于全动态资源配置运行

[*]核心转发

[*]自包含的网络服务器
[*]支持 TCP 代理
[*]支持 UDP 代理
[*]支持透明劫持模式

[*]多协议

[*]支持 HTTP/1.1,HTTP/2
[*]支持基于 XProtocol 框架的多协议扩展
[*]支持多协议自动识别
[*]支持 gRPC 协议

[*]核心路由

[*]支持基于 Domain 的 VirtualHost 路由
[*]匹配条件路由

[*]Headers/Path/Prefix/Variable/DSL

[*]路由模式

[*]重定向
[*]直接响应
[*]流量镜像

[*]高级路由

[*]基于 Metadata 的分组路由
[*]基于权重的路由

[*]配置支持

[*]基于路由匹配的重试
[*]基于路由匹配的超时配置
[*]基于路由匹配的请求头/响应头处理


[*]后端管理 & 负载均衡

[*]连接管理

[*]支持连接池管理
[*]支持长连接心跳处理

[*]容错机制

[*]支持熔断
[*]支持后端主动健康检查

[*]负载均衡策略

[*]Random/RR/WRR/EDF 等
[*]基于 Metadata 的分组策略

[*]后端集群模式

[*]OriginalDst/DNS/SIMPLE
[*]支持自定义扩展集群模式


[*]可观察性

[*]Trace 模块

[*]格式可扩展
[*]集成 jaeger/skywalking

[*]Metrics

[*]基于 prometheus 格式

[*]日志

[*]支持可配置的 AccessLog

[*]管理接口

[*]可扩展的 Admin API

[*]监控

[*]集成 Holmes,自动监控 pprof


[*]TLS

[*]证书管理

[*]多证书匹配模式
[*]TLS Inspector 模式
[*]基于 SDS 的动态证书获取/更新
[*]可扩展的证书管理机制

[*]国密支持

[*]基于 CGo 的国密套件


[*]进程管理

[*]支持平滑升级(连接/配置迁移)
[*]支持优雅退出

[*]扩展能力

[*]插件扩展

[*]基于 go-plugin 的模式
[*]基于进程的扩展模式
[*]基于 WASM 的扩展模式

[*]自定义扩展

[*]支持自定义扩展配置
[*]支持四层/七层 Filter 扩展


小结

希望本文对你有所帮助,如果喜欢,欢迎点赞收藏转发一波。
我是老马,期待与你的下次相遇。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: MOSN(Modular Open Smart Network)是一款主要使用 Go 语言开发的云原生网络代理平台