《亿级粉丝大 V 下的交易高性能架构与成本优化-张钦贤.pdf》由会员分享,可在线阅读,更多相关《亿级粉丝大 V 下的交易高性能架构与成本优化-张钦贤.pdf(21页珍藏版)》请在三个皮匠报告上搜索。
1、亿级粉丝大 V 下的交易高性能架构与成本优化快手电商/张钦贤个人介绍&演讲目录张钦贤 快手电商 技术专家负责快手电商正向交易的架构升级、稳定性保障、成本性能优化等工作,2021 年 11 月入职后成功完成多项重大项目,包括交易订单模型升级、交易平台化架构建设、高可用稳定性保障、白盒化成本性能优化等,将交易系统的稳定性和性能提升到电商领域第一梯队。快手电商交易大V直播流量特点 快手电商交易架构面临的核心挑战 快手电商交易架构高性能解决方案 如何高性能高并发扣减库存?如何高性能实现分布式事务?如何高性能管理下游依赖调用?如何设计高性能的数据访问接口?如何在业务高速增长同时优化成本?演讲目录快手电商
2、交易大V直播流量特点快手直播电商:不定时、脉冲式超高秒杀交易流量1亿+粉丝近500w人同时在线近100w每秒下单请求快手电商交易架构面临的性能和成本挑战1、单热点商品库存扣减难度大2、下单分布式事务性能要求高3、依赖服务多编排调用复杂4、业务体量增长带来成本上升5、订单承载信息多,模型和接口扩展性要求高架构原则&目标:保持牢固稳定性、流畅性能体验、追求低成本快手某大V有1亿+高粘性粉丝,经常推出库存为几百万的1元低价商品,造成业界最高的单热点商品扣减流量,远大于友商交易下单需要扣减库存等资源,然后保存订单到数据库,是一个典型的分布式事务问题,面临CAP和高性能的挑战交易依赖几十个下游业务的上百
3、个依赖方法,依赖管理复杂性高,串行调用会导致RT累积,影响系统的稳定性和用户体验业务持续高速发展,随着时间积累,数据量成指数级增长,数据量的提升也必将带来一系列问题,例如成本升高、性能变差随着电商业务的不断高速发展,定制业务需求数量快速增长,交易订单模型和数据访问接口要求能够快速高性能支撑各种灵活的定制逻辑快手电商交易架构针对上述挑战的整体解决方案直播短视频买家首页店铺活动流量NativeAPI网关RNH5多端入口支持精准限流模块安全防刷单模块交易服务购物车订单确认下单订单管理超时任务交易存储订单库买家索引库卖家索引库卖家ESHive/Redis冷热数据归档优化成本在线库历史库定时归档联合查询
4、高性能依赖管理调用商品查询店铺查询库存扣减限购扣减营销校验保存订单高性能库存扣减Mysql库存扣减Redis库存扣减容灾&热点商品切换高性能分布式事务同步扣减异步回退废单消息&数据对账高性能可扩展的订单模型和数据接口主子单扩展字段订单打标按需查询高性能API流量管理:精准流量预估&限流避免流量超限,请求排队提供良好的限流用户体验,安全防刷单避免黑产攻击高性能库存扣减:Redis和DB容灾双活能力,最大限度保障稳定性和高性能高性能分布式事务:下单同步扣减下游资源、失败异步回退,废单消息保障一致性和高性能高性能下游依赖调用:下游依赖分级保障稳定性,异步调用编排实现高性能高性能订单模型和数据接口:订
5、单主子单模型+扩展字段灵活支持业务,按需查询提升性能冷热数据归档优化成本:在线库数据定时同步到历史库,提供联合查询能力对业务透明请求排队能力1、高性能高并发秒杀库存扣减快手有1亿+粉丝的大V,经常推出库存几百万单的1元低价福利商品,造成业界最高的单热点商品扣减流量,远大于友商。日常大V没有开播的情况下又会恢复到较低的流量,这种脉冲式流量对库存存储架构的稳定性、性能、一致性带来了极大挑战。库存存储方案选型优点缺点全部使用Mysql数据可靠性要高,主从切换可以做到不丢数据单key写入能力大幅低于Redis,需要搭建从库来支撑读能力,成本较高全部使用Redis能支持超高的单key查询和扣减、性能高、
6、存储成本低在主从切换、主备切换时存在数据丢失的可能大V直播期间全部使用Redis,非高峰期使用MySQL非高峰期间不需要担心数据丢失,高峰期间可以支撑热点商品库存扣减,保障下单成功率切换时,需要停写,会影响所有商品的售卖,导致切换时间GMV跌零大V售卖热点商品使用Redis,其他商品使用MySQL非大V售卖热点商品不需要担心数据丢失,大V售卖商品可以支撑热点商品库存扣减,保障下单成功率,切换停写只影响部分商品售卖需要提前获得大V售卖的热点福利商品,通过白名单方式维护,在操作时需要对这部分商品停写,实现逻辑会复杂出于数据可靠性、保障GMV这两个关键指标,选用方案4,并对MySQL进行深度优化,将