Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?定呢? 说好的供应商不锁定呢? @Google:SMI带来的美好愿景 Part 4:ServiceMesh灵魂拷问四:说好的供应商不锁定呢? 应用 控制平面 数据平面 最终用户体验 工具 生态体系 Service Mesh Interface Universal Data Plane API “SMI 是在 Kubernetes 上运行服务网格的规 范。它定义了由各种供应商实现的通用标准。这 Service Mesh 出道四年,后面会怎么发展要架构, 还是要 性能? 落地,落地,落地 灵 魂 拷 问 性能有了, 架构 怎么办? 要不要 支持 虚拟机? 说好的 供应商 不锁定呢? 优化,创新 落地,创新 标准化,生态共建 每一个问题和答案, 都会深刻影响未来几 年Servicemesh的 走向,请密切关注关注 ServiceMesher 微信公众号 获取社区最新信息 关注0 码力 | 43 页 | 2.90 MB | 6 月前3
蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘•Metrics 收集 •TCP 代理 •TLS 支持 •TProxy 支持 •平滑 reload •平滑版本升级 多协议 •SOFA RPC •HTTP 1.x (待优化) •HTTP 2 (待优化) •Dubbo (研发中) •HSF (研发中) •On TLS 核心路由 •支持 virtual host 路由 •支持 headers/url/prefix 路由 •支持基于 后端管理4 性能单核优化点 1 Ø绑核 ü 更好的 runtime G-P-M data locality亲和性 ü 整体性能提升约 30% Ø内存 ü SLAB-style buffer pool ü 内存优化 ØIO ü IO 优化 ü IO 均衡 Ø调度 ü P调度均衡 ü 池化 worker 协程 Ø其他 ü Log 优化 ü Codec 优化:减少解包等绑核 2 Ø单核绑核 -> mheap -> arena ü大于 32K 的大内存分配顺序 mheap -> arena ØGC 优化 ü避免入堆 ü减少内存 copy ü内存使用整体化,降低 scanobject 成本 ü使用 GC 亲和的数据结构 ü适度使用 sync.Pool ü…IO 4 Ø优化 ü尽可能多读,同时减少SetReadDeadline频繁调用,实现见 IOBuffer.ReadOnce0 码力 | 44 页 | 4.51 MB | 6 月前3
蚂蚁金服网络代理演进之路提升3倍 • 对Spanner实现了异步化改造 • 对openssl进行了异步化引擎改造 • 实现多芯片卡的负载均衡协议实现的改造-MTLS MTLS:1) 轻量级TLS库,小于50k;2) 优化的TLS协议 0-RTT • 减少握手延迟 • 代价:握手前发送的数据不能 保证防重放攻击,因此要求应 用程序自己保证防重放攻击 Small Ticket • 自定义Session Ticket编码格式 业务可根据需求灵活选择明文 或密文传输,提升业务效率 动态Record Size • 平衡吞吐与时延 高效 优化 灵活 TLS扩展安全合规能力持续升级 国密算法 • 拥抱监管 • 安全可控 • 金融科技 AntTLS库 • 基于OpenSSL • 全面拥抱TLS1.3 • 国密优化实现,国密单证书标准支撑 • 支持SGX等可信机制 • 多硬件卡Engine • Mobile,iot设备等多终端支持 剩余红包实时显示无线移动网络优化 § 统一通道:主长连接 + 短连接 § 统一协议:MTLS+MMTP § 统一调度:MobileDC 最优调度 网络探测 连接建立 传输+保持 通道复用 复合建连 握手优化 短连补偿 智能心跳 数据压缩 质量模型 自动重试 云端补偿 柔性建连 假连淘汰 动态超时 § 终端策略覆盖移动网络难点 § 优化对业务透明 § ROI考虑0 码力 | 46 页 | 19.93 MB | 6 月前3
严选 ServiceMesh 实践日志平台11/24 性能视角 – cNginx vs Envoy(优化前) • 1600RPS+40个并发(主机配置均为 8C16G) • cNginx 的 RT overhead 在0.4ms左右 • Envoy(client模式)的 RT overhead 是0.6ms左右12/24 性能视角 – cNginx vs Envoy(优化后) • 优化方案 • 采用 sriov 容器网络 • Envoy:将1 Envoy:将1.13版本中 connection loadbalancer 特性移植到 1.10.x 版本 • Envoy 优化后在低并发(<64)的情况下,容器网络 client sidecar 优于 VM 网络直连 • Envoy 优化后在高并发(>=64)的情况下 • 容器网络 client sidecar 接近 VM 网络直连 • 容器网络 client sidecar 远远优于 VM 相关配置下发功能版本后,Envoy 在一定压力访问或 有客户端主动断开请求时,会进入一段存在问题的断言(assert)逻辑,导致 envoy crash, 此时请求方体现为 502 异常 • 社区目前给出的优化建议是在 envoy 编译选项使用 -opt(默认为 -dbg) • 社区已在新版本清理这段问题断言逻辑:https://github.com/envoyproxy/envoy/issues/90830 码力 | 25 页 | 2.07 MB | 6 月前3
SOFAMOSN持续演进路径及实践分享Ø 内存复用框架 Ø Slab style buffer Ø Raw-Epoll模式 Ø 读合并 Ø 协程池化 Ø 调度均衡 Ø SOFARPC深度优化 Ø TLS官方库IO优化 Ø HTTP1.1/HTTP2.0 IO优化 Ø 日志操作异步化&多次合 并 Ø 基于RCU的高性能配置更 新安全 & 可观察性 0.1.0 0.2.0 0.3.0 0.4.0 Ø mTLS支持 继续读取数据技术案例 – HTTP/2.0优化 官方HTTP/2.0实现问题: 1. syscall read较多,效率低下 2. 每个stream分配单独的goroutine处理, 调度开销高 3. 临时对象多,GC占比高 4. 基本实现了RFC中MUST部分,部分功 能需求上不匹配,如GRPC trailer实现技术案例 – HTTP/2.0优化 优化思路:适配MOSN框架,复用官方实现核心结构体和解析流程 代码管理 ü fork x/net/http2 代码 ü 新增mosn_http2.go文件,复用原生结构体和方法,暴露mosn框架 所需方法和结构 ü 原则不修改原生文件技术案例 – http2性能优化 Ø 压测环境 p Intel(R) Xeon(R) CPU E5620 @ 2.40GHz p kernel:2.6.32-220.23.2.el6.x86_64 p 单核模式:1 core; 多核模式:0 码力 | 29 页 | 7.03 MB | 6 月前3
七牛容器云ServiceMesh实践Contour支持Tracing能力 • 数据面共存 • 共用边车组件Envoy七牛现有Service Mesh体系 • Istio产品化 • 东西流量产品化 • 南北流量产品化 • TLS管理优化 • Contour增强 • 入口流量管控 • 跨集群调度 • 发展策略 • API版本兼容两种方式 • 数据面优先,控制面按需迭代七牛容器云Service Mesh发展 • 产品发展 • 线上问题链路追踪 • 解决方案 • Istio南北流量分流策略产品化 • 基于Istio的QoS产品化 • 跨集群流量调度 • 基于Istio的Tracing产品化落地场景—大数据产品 • 系统优化之路 • 多版本灰度升级 • 根据流量做横向伸缩 • 分布式系统性能测试问题 定位难 • 解决方案 • Istio南北流量分流策略产品化 • 基于Istio的QoS产品化 • 基于Istio的Tracing产品化 跨集群流量调度七牛容器云产品逻辑架构 Kubernetes + Docker + 生态链七牛容器云产品未来发展 • 更多功能 • 故障熔断 • 故障注入 • 业务配置动态分发 • 优化升级 • 性能优化: • DPDK + eBPF • 系统优化 • 根据需求裁剪Istio。解耦Envoy和其他组件 • 裁剪Istio相关CRD,简化系统结构ServiceMesher公众号 SOFAStack公众号 http://www0 码力 | 15 页 | 3.86 MB | 6 月前3
函数计算在双11小程序场景中的应用能和大规模资源伸缩调度、性能优化等系 统核心能力的研发。❖ 函数计算介绍 ❖ 双11小程序场景介绍 ❖ 技术挑战 ❖ Demo 目录函数计算-介绍 • 通用Serverless计算平 台 • 与云端事件源无缝集成 • 弹性伸缩,按量付费函数计算-介绍双11小程序场景介绍小程序场景的挑战 n 安全隔离 n 开发效率 n 大量的小程序是不活跃的 n 活动高峰期流量激增函数计算-冷启动优化 Download Logic Execution Start Container Agent Ready FC Responsibility Developer Responsibility 优化前 1000ms 10ms~60000ms 优化后 200ms 10ms~60000ms 预留实例 0ms 0ms函数计算-弹性伸缩 C1 C1 C2 C1 C2 时间 t1 t2函数计算-预留实例 • 预留实例:性能好0 码力 | 13 页 | 6.95 MB | 6 月前3
Service Mesh是下一代SDN吗:从通信角度看Service Mesh的发展(Pilot+Consul 占用冲高到 400%) • TIME_WAIT Sockets 太多导致FD耗光 Consul Registry优化 • 增加数据缓存,减少无谓的Consul Catalog API调用 • 将Polling改为Watch,大幅降低Consul服务数据变化后的同步时延 优化效果 • 200个服务的规模下,CPU占用率降低了一个数量级 • 服务数据变化同步时延从分钟级降低到秒级 • Consul调用导致的TIME_WAIT • IPV6支持增强 • 在Istio中集成方法级的调用跟踪 • 在Istio中集成Kafka调用跟踪上游开源社区参与情况 所有通用的故障修复、性能优化和新特性都提交PR合入了上游社区。包括: • Consul Registry性能和资源占用优化 • 多网络平面支持 在产品化过程中对Istio的改进会持续向社区进行贡献!Service Mesh中文社区 https://www.servicemesher0 码力 | 27 页 | 11.99 MB | 6 月前3
Service Mesh Meetup #3 深圳站测试;如何提升工程效率?我是作者名称2017 年 DevOps 现 状调查报告DevOpsDevOps DevOps 不是一种新工具; DevOps 不是一种新团队; DevOps 不是一种新角色; DevOps 是一种文化:一切自动化,工具化,规范化;选择哪个 CI/CD 工具?Docker stats 查看 Docker 服务所占用的CPU和内存开销DroneDrone • 一款使用 Go 开发,基于容器技术的0 码力 | 45 页 | 18.62 MB | 6 月前3
进击的 Traefik | 云原生边缘路由器探秘With Docker 4 Traefik With KubernetesTraefik 是什么? • 云原生的边缘路由器 • 让部署微服务更加便捷而诞生的现 代 HTTP 反向代理、负载均衡工具 • 它支持多种后台 (Docker, Swarm, Kubernetes, M arathon, Mesos, Consul, Etcd, Z ookeeper, BoltDB, Rest API 中间件,用来修改请求或 者根据请求来做出一些判断( authentication, rate limiting, headers, ...)Providers • Providers 可以是编排工具、容器 引擎或者 key-value 存储等等 • Traefik 通过 Providers 的 API 查 找有关路由相关信息,并动态更新 • 基于标签、key-value、注解、文 件0 码力 | 35 页 | 8.58 MB | 6 月前3
共 17 条
- 1
- 2













