微服务不死 — 共享变量在策略引擎项目的落地详解
01
背景
1、共享变量的提出
2、爱奇艺海外策略引擎调用关系
2.1 策略引擎调用关系介绍
2.2 遇到的困境
02
共享变量的曙光
1、概述
2、策略引擎调用链路分析
2.1 串行调用场景
2.2 并行调用场景
03
分布式共享变量介绍
1、原理概述
2、全链路追踪 — 基于SkyWalking
3、链路传输优化 — 压缩解压缩
3.1 压缩基本原理
3.2 压缩选型
4、数据大小导致的网络消耗分析和极端情况控制
4.1 背景概述
4.2 压测方案
4.3结论
网络链路上存放数据大小在2000以下,对网络性能的影响可以忽略不计。 因为分布式共享变量的存在而减少对DMP服务的请求,接口性能可以有比较大的提升。具体数值为P99从25ms提升到2.96ms。
4.4 极端情况控制
5、线上运行情况
5.1 性能优化
5.2 对DMP服务的流量优化
6、结论
04
本地共享变量介绍
1、原理概述
2、网关层Hash路由方式的支持
3、本地共享变量个数和有效时间设计
4、结论
对于DMP服务1,优化流量15.8%。对于DMP服务2,优化流量 16.7%。对于DMP服务3,优化流量16.2%。 与分布式共享变量一样,本地共享变量同样可以满足数据实时性要求,即不会存在1.2.2 遇到的困境 所遇到的缓存导致的数据实时性不够的问题。
05
总结和展望
参考文章:
猎户座-持续打造爱奇艺海外高扩展性的策略引擎项目 Scaling up the Prime Video audio/video monitoring service and reducing costs by 90% 从微服务转为单体架构、成本降低 90%,亚马逊内部案例引发轰动!CTO:莫慌,要持开放心态 分布式系统日志打印优化方案的探索与实践
也许你还想看