当前位置:首页 > 报告详情

李明-使用缓存提高StateBackend性能.pdf

上传人: 云闲 编号:101908 2021-01-01 28页 3.98MB

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文探讨了字节跳动基础架构工程师李明关于StateBackend性能改进的优化思路,核心是结合Heap和RocksDB的优势,提出了一种Anti-Caching架构。主要内容包括:现有StateBackend的优缺点分析,业务痛点,优化思路,难点及解决方案,业务收益和未来规划。现有StateBackend的优点是访问速度快,CPU开销低,缺点是状态规模小,GC停顿时间长。RocksDBStateBackend的优点是内存开销低,可支持超大状态,缺点是CPU开销高。优化思路包括样本拼接/消重行为数据流,推荐数据流模型训练/在线服务业务场景,降低StateBackend选型难度,提供通用缓存层,热点数据缓存,以及State封装。难点在于提高缓存命中率,适配不同业务场景,避免内存溢出,快照制作优化,动态扩缩容,降低快照制作时间。解决方案包括Cache策略与数据存储分离,固定以Map形式存储数据,控制数据的存储与删除,适配不同业务场景,确保Cache使用的总内存不超过配置值,基于序列化后的结果预估大小,访问时进行内存溢出判断。业务收益包括Benchmark对比优化效果,CPU使用率下降50%,内存使用率上升40%~50%。未来规划包括优化Cache策略,减少CPU尖刺、小文件数量,探索新的StateBackend,如RemoteStateBackend。
"如何优化缓存命中率?" "如何降低StateBackend的选型难度?" "如何提高StateBackend的性能?"
客服
商务合作
小程序
服务号
折叠