函数计算在双11小程序场景中的应用Developer Responsibility 优化前 1000ms 10ms~60000ms 优化后 200ms 10ms~60000ms 预留实例 0ms 0ms函数计算-弹性伸缩 C1 C1 C2 C1 C2 时间 t1 t2函数计算-预留实例 • 预留实例:性能好 • 按量实例:按需使用函数计算-预留实例 预留实例 按量实例 效果 0 0 禁止调用 10 0 只使用预留实例,固定费用0 码力 | 13 页 | 6.95 MB | 6 月前3
阿里巴巴核心应用洛地 Service Mesh 的挑战与机过NodeJS Java C++ Golang 运维系统云原生时代快速赋能 Biz APP Non Ali Biz框架思维转向平面思维 Service Mesh Biz Non Ali Biz将中间件能力下层到基础层 业务 (Java/Go/C++ 等) Serverless 业务 (Java/Go/C++ 等) 业务 (Java/Go/C++, etc) Serverless Serverless 业务 (Java/Go/C++, etc) 网格化的基础组件 (基于插件) 网格化的基础组件 (基于插件) Service Mesh BaaS 注册服务 配置服务 消息 缓存 K8s•未来应用开发一定是 云原生 •考验好产品的标准是 云原生 •经济、技术共同体是 愿景 机遇 •基于 Service Mesh 基础面开发 •是否能很好的支持 Service0 码力 | 22 页 | 6.61 MB | 6 月前3
蚂蚁金服双十一 Service Mesh 超大规模落地揭秘基础架构和业务研发的耦合,以及未来无限的对业务透明的稳定性与高可用相关诉求。 为什么要 Service Mesh-结论9 为什么要 ServiceMesh-结论-方案 应用A 应用 应用B 应用C 应用D 应用E SOA 解耦了不同的业务团队之前的耦合 服务注册中心客户端 限流熔断客户端 动态配置客户端 故障注入客户端 Service Mesh 解耦了业务开发与基础团队之前的耦合 Pod New With MOSN Pod New With MOSN 扩容 缩容 资源 Buffer Pod APP:4C8G Pod APP:4C8G MOSN:4C2G Operator 注入 传统接入 VS 原地接入 4C2G? Elastic Heap CPU超卖17 方案落地-MOSN 升级策略-有感升级 MOSN V1 APP MOSN0 码力 | 26 页 | 2.71 MB | 6 月前3
Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?html)Part 1:ServiceMesh灵魂拷问一:要架构还是要性能? Mixer v2 Proposal的核心 Mixer-In-Proxy. Mixer will be rewritten in C++ and directly embedded in Envoy. There will no longer be any stand-alone Mixer service. This will will improve performance and reduce operational complexity. Mixer-In-Proxy/Mixer合并进Proxy。 Mixer 将用C ++重写并直接嵌入到Envoy。 将不再有任何独立的 Mixer 服务。 这将提高性能 并降低运维复杂性。Part 2:ServiceMesh灵魂拷问二:性能有了,架构怎么办? 性能有了,架构怎么办? Tracers ● Health checkers ● Transport sockets ● Retry policy ● Resource monitors ● Stats sink 扩展方式: ● C++ ● Lua(目前仅限于HTTP Traffic) ● Go extensions (beta, for Cilium)Envoy最新的扩展方式:Web Assembly Part 2:Serv0 码力 | 43 页 | 2.90 MB | 6 月前3
蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘金融级鉴权体系 • 云原生zero trust网络安全趋势 Ø异构语言体系融合 • SOFA/NodeJS/C++/Python/.. • 业务低成本融入服务,运维体系为什么要自研Golang版本ServiceMesh 2 Ø跨团队协作需要考虑技术栈落地成本 ü 参与团队分别使用C,Golang,Java等多种技术栈 Ø基于蚂蚁SOFA体系的Mesh化思考 ü 无法保证上下游应用同时升级到Mesh模式 Stream Event Handler Pool worker worker Worke r data Log Writer Pool send encode Q u e u e C模块划分 11要点总结 12 Ø模块化,分层解耦 Ø统一的编程模型接口 Ø可扩展的事件驱动模型 Ø可扩展的路由/后端管理机制 Ø更好的吞吐量3 能力核心能力 1 网络处理 •网络编程接口 4 ü Case2 ü 证书:ECC p256 ü Cipher: ECDHE-ECDSA-AES256-GCM-SHA384 Ø命令 ü ab -f TLS1.2 -Z $cipher -c 100 -n 200000 https://$ipGolang TLS单核性能测试 13Golang 单核加解密性能分析 14 ØGolang 对 RSA 上没有优化,并且暂无优化计划 ØGolang0 码力 | 44 页 | 4.51 MB | 6 月前3
Service Mesh的实践分享保证性能 • 节省资源 Java App Local Proxy OSP Server Remote Proxy Cluster Thrift over TCP PHP App C/C++/Node JS App Thrift over TCP Thrift over TCP JSON over HTTP JSON over HTTP多语言服务端接入 • Registry 与Java应用在架构上呼应,保持架构的一 致性 • 然而,实际上PHP Thrift效率低比内置 的HTTP模块慢得多 • 性能消耗比JSON转Thrift还要大 • 最终废弃了PHP Thrift模块,直接使用 自带的c写的http模块 + +Daemonset共享模式下Proxy资源的竞争 • Proxy作为资源的一种,隔离性很重要 • 多个Pod共享一个Proxy • 不同Pod的流量特征差异很大 • 根据实时数据优化不合理的跨机房调用 Proxy App 服务调用 (带超时时 间) Proxy App Proxy App Service A Service B Service C 调用 X 1 调用 X 3 Service B IDC 1 IDC 2开源 https://github.com/vipshop/vjtools https://github.com/vipshop/Saturn0 码力 | 30 页 | 4.80 MB | 6 月前3
大规模微服务架构下的Service Mesh探索之路功能不能满足蚂蚁的需求,没法做到 类似envoy xds那样的扩展性 • 未来发展前景黯淡 Envoy • 安心做数据平面, 提供XDS API • 设计优秀,性能和稳定性表现良好 • C++编写,和蚂蚁的技术栈差异大 • 蚂蚁有大量的扩展和定制化需求 • 我们非常认可envoy在数据平面上的表现开源方案选择之第二代Service Mesh Istio • 第一选择,重点关注对象 定制Pilot,实现ETCD Adapter • 脱离k8s运行Sofa Mesh在技术选型时考虑 Envoy • 数据平面:Envoy最符合要求 • XDS API的设计更是令人称道 • C++带来的技术栈选择问题 • 我们有太多的扩展和定制 • 而且,proxy不仅仅用于mesh Istio • 控制平面:Istio是目前做的最好的 • 认可Istio的设计理念和产品方向 • • 前置检查和配额是同步的 • Report数据上送是使用 fire-and-forget 模式异步完成的 Mixer CacheMixer Cache的隐患 a + b + c = 300 a * b * c = 1000000 笛卡尔乘积Mixer反省之二:隔离和抽象的层次 ü Mixer的设计目标: • 提供统一抽象(Adapter) • 隔离基础设施后端和Istio其他部分0 码力 | 37 页 | 7.99 MB | 6 月前3
SOFAMOSN持续演进路径及实践分享& 概览 Ø 持续演进路径 & 技术案例 Ø 实践案例 Ø 规划 & 展望 Ø QA背景 & 概览数据平面概览 SOFAMOSN • C实现,支持多语言扩展 • 基于Nginx扩展 • 开发不活跃 • 老牌代理系统,业界广 泛使用,服务各类场景 • C++实现 • CNCF第三个毕业项目, ISTIO原生数据平面 • 开发活跃,最新版为1.9.0 • Google, Lyft主导,业界 适用于跨语言通信的场景蚂蚁落地 – 复杂路由 ü 基于链式路由机制扩展,使 用router match,subset等 开源能力实现 ü 适配蚂蚁三地五中心机房部 署,LDC/弹性架构 ü 蚂蚁内部划分R/G/C三种 zone类型,每个Zone的能 力不保证对等 ü 适用于单次简单路由无法解 决的复杂架构场景(如非对 等路由,不确定当前zone 是否有该服务的提供方) Service A MOSN 深圳机房0 码力 | 29 页 | 7.03 MB | 6 月前3
Service Mesh是下一代SDN吗:从通信角度看Service Mesh的发展产品化增强-服务注册发现 出于历史原因,我们使用了Kubernetes来部署服务,但并未使用Kubernetes内置的 服务发现功能。 Process Service-A Service-B Service-C Coarse grained Service Application Process Process Service B Process (Service-E) Process (Service-F) inside one process to Istio service?产品化增强-兼容粗粒度的SOA类应用 Process Service-A Service-B Service-C Sidecar Process Process Service B Process Service-E Fine grained Service (Service-D) Coarse 要求对应用进行改造,避免端口冲突 建议 Ø 将TCP纳入Service Mesh管控还不成熟,成本远大于收益 Ø Service Mesh应主要关注L7,而不是L4 Shard A Shard B Shard C client 一致性哈希 client client产品化增强-TCP Service的处理 在Service Mesh中 Bypass TCP流量,让TCP请求跳过Service Mesh的处理,缺省发送到原0 码力 | 27 页 | 11.99 MB | 6 月前3
蚂蚁金服Service Mesh渐进式迁移方案DNS寻址方案的演进 DNS寻址方案的后续规划保证迁移前后服务间网络互通 Service A Service B Service C SOFA Registry 服务注册 服务调用 服务发现 Non-k8s k8s Service A Service B Service C SOFA Registry Non-k8s k8s 192.168.1.102:12220 192.168.1.103:12220 DNS寻址方案的演进 DNS寻址方案的后续规划总结 ClusterFirst A 体: Service Mesh演进路线 B 面: 实现平滑迁移的关键 线: SOFAMesh 的DNS寻址 C D 点: CoreDNS 的单点突破ServiceMesher公众号 SOFAStack公众号 http://www.servicemesher.com0 码力 | 40 页 | 11.13 MB | 6 月前3
共 17 条
- 1
- 2













