云原生开放智能网络代理 MOSN## 云原生开放智能网络代理 MOSN 金融级云原生架构助推器 肖涵(涵畅) 蚂蚁金服高级技术专家 SOFAMosn 项目负责人 ZooKeeper ## Kubernetes Ingress Controller Service Mesh 控制面 Pilot Galley 访问请求 多协议接入 TLS,国密 MOSN WAF, DDoS 多种服务注册中心 SOFA Registry 协议包过滤器 • 压测引流 协议扩展 加密链路 · 服务分组 可观测性扩展 · 国密算法 • 服务鉴权 - 透明劫持 - 平滑升级 - 可观测性 路由扩展 集群管理扩展 ## MOSN 助力业界最大规模之一的 Service Mesh 实践 100% 核心支付链路覆盖 ## 几十万 容器规模 千万 峰值 QPS ## 极低消耗 CPU 0%~2% MEM 15M plane. The website is under construction. 🔍 docs © 2019 MOSN Authors · CC BY-NC 4.0 · 项目域名:mosn.io 项目地址:github.com/mosn/mosn 社区组织:MOSN Community Organization ## 社区 更完善的文档及 Demo 安全审计 ## 多协议 更多0 码力 | 12 页 | 1.39 MB | 1 年前3
Istio + MOSN 在 Dubbo 场景下的探索之路## 多点生活在 Service Mesh 上的实践 ## I stio + MOSN 在 Dubbo 场景下的探索之路 陈鹏 多点生活 平台架构组研发工程师 陈鹏、多点生活平台架构组研发工程师 • 开源项目与云原生爱好者 多年网上商城、支付系统相关开发经验 • 2019 年至今从事云原生和 Service Mesh 相关开发工作 ## /01 为什么需要 Service Mesh 探索 探索 Istio 技术点 Dubbo 场景下的改造 对比传统微服务架构 • 和 Service Mesh 化 之后有哪些优缺点 • MCP • Pilot • xDS • MOSN 结合 Istio 的技术点, 介绍多点生活目前的 探索以及服务发现 Demo 的演示 ## 为什么需要 Service Mesh 改造 对比传统微服务架构和 Service Mesh 化之后有哪些优缺点 ns||||| |Peerauthentications||||| |Other||||| MOSN 是一款使用 Go 语言开发的网络代理软件,作为云原生的网络数据平面,旨在为服务提供多协议、模块化、智能化、安全的代理能力。MOSN 是 Modular Open Smart Network 的简称。MOSN 可以与任何支持 xDS API 的 Service Mesh 集成,亦可以作为独立的四、七层负载均衡,API0 码力 | 25 页 | 3.71 MB | 1 年前3
MOSN 高性能网络扩展实践 - 王发康## GCN MOSN 高性能网络扩展实践 王发康 2021 Gopher Meetup HZ ## About Me 王发康 蚂蚁集团 可信原生技术部,技术专家 蚂蚁集团技术专家,专注于高性能网络服务器研发,MOSN、Tengine 开源项目核心成员,目前关注云原生 ServiceMesh、Nginx、Envoy、Istio 等相关领域。 喜欢开源,乐于分享。 https://github 4738c08a17408/p5_4.jpg) 在 Service Mesh 领域,Envoy 和 MOSN 作为其数据面 sidecar 之一,用于解决传统服务治理体系下的痛点如:多语言,中间件组件开发适配成本高、SDK 升级困难、技术复用度差、治理体系不统一等。 MoE = MOSN + Envoy 相互融合,各取所长 ## MoE 背景介绍 — 为什么做 ## 用户痛点 - east-west、north-south c01a74738c08a17408/p6_2.jpg) • External-proc extension 可扩展性、灵活性、生态 ## 价值意义 - 技术共享,融合 Envoy 和 MOSN 优势  增强 Envoy 和 GoLang0 码力 | 29 页 | 2.80 MB | 2 年前3
蚂蚁金服双十一 Service Mesh 超大规模落地揭秘黄挺(鲁直) 蚂蚁金服云原生负责人 主要 Focus 领域: 主要 Focus 领域: * 服务框架:SOFARPC(已开源) * SOFAStack 微服务领域 * Service Mesh: MOSN(已开源) $ ^{*} $ Service Mesh, Serverless 等云原生领域 SOFAStack 官网: https://www.sofastack.tech SOFAStack: envoy?不现实,自有协议+历史负担。 SDK/透明劫持:运维和可监控性不好,性能不高,风险不太可控。 最终选型:自研数据面+轻量 SDK,我们给出的答案是 MOSN。 ## 产品层 服务发现 Pilot MQ 运维能力 Pod Pod 监控能力 MOSN HTTP/RPC MOSN 流量调控 APP APP 安全能力 More Sidecar 扩展能力 More Sidecar Sidecar 容器如何替换 3问 MOSN 如何升级 ## App 容器 应用代码 SOFABoot/SOFARPC API SOFABoot SOFABoot 研发框架 JVM App 容器 应用代码 SOFABoot/SOFARPC API SOFABoot_Old SOFABoot_New RPC JVM 检测 pod 变量,注入启动参数 判断开启了 MOSN 发布和订阅服务0 码力 | 26 页 | 2.71 MB | 1 年前3
Apache Dubbo-go 在云原生时代的实践与探索-于雨Redis/Muduo/Pika/Dubbo/Dubbo-go/Sentinel-go ’ alt=‘OCR图片’/> 目录 1 dubbogo 和 它的朋友们 2以k8s作为注册中心 3 基于 MOSN 4 基于应用注册模型的双模通信 5 云原生时代的 dubbogo 3.0 6 dubbogo 社区 1 dubbogo 和 它的朋友们 Dubbogo = Go 语言的 Dubbo 或者应用压力过大而垮掉,则系统无法正常运行 3 基于 MOSN 云原生 = k8s + dubbogo SDK + Dubbo APP 缘由 1 使用 dubbo 作为微服务框架的企业想采用 istio 2 直接使用 Envoy/MOSN 需要对架构作出大幅改动升级 3 Envoy/MOSN 没有服务发现/路由配置能力 4 MOSN+ dubbo-go sdk 实现服务发布 运行流程 运行流程 1 meshSwitch 打开,则 provider启动时访问 MOSN http接口注册其可提供的服务能力,MOSN借助 dubbo-go注册服务 2 provider 退出时通过 MOSN的 unpub 接口注销其服务能力 3 consumer 直接从注册中心/借助 MOSN的sub接口获取 provider列表 总体架构 mesh化和非 mesh 化的应用可以互通0 码力 | 37 页 | 1.41 MB | 1 月前3
SOFAMOSN持续演进路径及实践分享蚂蚁+UC主导,重点搭载SOFAMesh使用,目标服务通用场景,金融场景 ## SOFAMOSN HTTP/1.1 HTTP/2 SOFA RPC Dubbo RPC HSF RPC MOSN a sidecar implemented in Go golang XDS API Mixer Service Pilot ↓ Mixer Citadel Control 0.061+23 gc 247 @105.497s 11%: 0.095+57+0.016 ms clock, 0.095+26 ### 技术案例 – HTTP/2.0优化 ## 优化思路:适配MOSN框架,复用官方实现核心结构体和解析流程 框架适配 ✓ IO框架 ✓ 内存复用框架 ✓ workerpool协程池框架 ## 功能支持 ✓ 请求流式处理模式 ✓ 热升级 ✓ metrics 修复HTTP/2 headers key不支持冒号开头字段的问题 ✓ 适配envoy的HTTP2配置项 ## 代码管理 ✓ fork x/net/http2 代码 ✓ 新增mosn_http2.go文件,复用原生结构体和方法,暴露mosn框架所需方法和结构 ✓ 原则不修改原生文件 ## 技术案例 – http2性能优化 压测环境 Intel(R) Xeon(R) CPU E5620 @ 2.40GHz0 码力 | 29 页 | 7.03 MB | 1 年前3
蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘[Image](/uploads/documents/7/a/5/5/7a55f790c69715542feda4c42f4b6ce8/p7_2.jpg) ## SOFAMosn HTTP/2 SOFA RPC MOSN a sidecar implemented in Go Dubbo RPC XDS API  Xeon(R) CPU E5-2650 v2 @ 2.60GHz X 1 ✓OS : 3.10.0-327.ali2008.alios7.x86_64 软件 ✓MOSN 0.1.0 ✓Envoy 1.7 ➢场景 ✓代理模式: client -> mesh -> server ✓Client直连server请求耗时1.6ms ## SOFARPC ➢Golang 对 SHA, MD 等 HASH 算法都有汇编优化 ➢除 p384,RSA 外,其他算法 golang 原生性能好于 boring SSL golang ## 性能优化规划 MOSN 1. SSL handshake 0 码力 | 44 页 | 4.51 MB | 1 年前3
02. Service Mesh落地之后_为sidecar注入灵魂 - 周群力事情没有那么 简单 ## 怎么落地 方案 1:替换 方案 2:共存 POD container MOSN container App container Dapr • 缺失 Service Mesh 能力 • 稳定性有待验证 container App container MOSN container Dapr • 运维成本飙升 • 稳定性更难保证 ## 《The ABC evolve to an application runtime? #15113 [Discussion] Future plans for dapr api #2817 [Proposal] Mosn to evolve to an application runtime #1591 [Proposal] configuration api design #2988  Different Infra Micro sidecar ## 蚂蚁的选择 function app 1 app 2 ## Runtime API Layotto on MOSN DB Mesh Runtime API Service Mesh WASM Runtime Different Infra ## 字节跳动的选择 ## 字节的Service Mesh0 码力 | 63 页 | 880.85 KB | 2 年前3
5.cgo 原理解析及优化实践f4bf8454/p1_1.jpg) 朱德江 蚂蚁集团 MOSN 核心成员 Golang contributor Envoy Golang extension maintainer ## 0 公众号 • 开源爱好者 • 十余年网关研发 • OpenResty 老司机(NGINX + LuaJIT) • MOSN 核心成员 • Envoy Golang extension maintainer ba2325c7c903bf4bf8454/p7_1.jpg) ## 取长补短 & 生态红利 Envoy 视角: 标准的 L4/L7 扩展 享受 Golang 的生态红利 ➢ MOSN 视角: 更换底层网络库 复用 Envoy 的能力 ## 举个例子 func (f *filter) verify(header api.RequestHeaderMap) (bool, string) Pinner (Go 1.22) ⑥ #cgo noesacpe/nocallback (Go 1.23) ## 😍 😍 #### MOSN 官网 http://mosn.io MOSN Github http://github.com/mosn/mosn MOSN 开源交流群  ## 业务进程专注于业务逻辑 Service 业务逻辑 轻量级SDK 协议编解码 Sidecar (MOSN) 服务发现 负载均衡 熔断限流 服务路由 Service A Proxy HTTP/1.1, HTTP/2, gRPC or TCP -- with or without mTLS /9/0/b6901cab1358696c62f61cd1e18230be/p30_1.jpg) ## SOFAMasn https://github.com/sofastack/sofa-mosn Written in go SOFAMosn是一个云原生安全网络代理 ## 为什么自研golang版本?  workerpool ## SOFAMosn能力扩展 ✓ 协议扩展 MOSN 通过使用同一的编解码引擎以及编/解码器核心接口,提供协议的 plugin 机制,包括支持 • SofaRPC HTTP1.x, /HTTP2.0 • Dubbo ## ✓ NetworkFilter 扩展 MOSN 通过提供 network filter 注册机制以及统一的 packet read/write0 码力 | 46 页 | 19.93 MB | 1 年前3
共 20 条
- 1
- 2













