挑灯鏖战万遍,白条依如初恋
任尔风云变幻,自把春秋惯看
备 战 总 报
团队备战从9月20日启动,11月1日全部备战完成,共完成10项备战环节,接口读压测,混合压测,写压测,共103个服务接口,23个系统,按平时峰值10倍或618峰值3至5倍已全部压测完成并通过。其中查询账户额度、查用户信息、白条商详页分期展示(无线)等接口压测值都达到了1000w/min以上,历史单量查询接口更是达到了3000w/min以上。
各备战小组于10.24-10.28分别进行了降级演练,以确保主要流程在双11期间正常运行,另,各小组已经同步MDC监控系统以及猎鹰系统便于双11期间实时监控系统情况。
深夜2点备战小组压测
带着萌宝来战斗
无暇顾及家庭,是很多备战成员的共同情况。网站组研发负责人张翠,刚休完产假两个月,白天上班离家时孩子还未醒,晚上又要压测或者演练,凌晨才回家,宝宝又早已熟睡。假日最幸福的莫过于一家团聚,和孩子在一起,告诉他这个世界的点点滴滴,然而她为了备战双十一周末连续加班不能休假,很久没能陪陪家人,给宝宝讲个故事了。
脱单后继续奋斗
交易组研发人员郭泽渊,刚脱单两个月,却赶上了双11备战,无暇顾及女友,一周只能见一次面,幸好女友贴心懂事,不但没有闹小脾气,反而相当理解支持他的工作。关于此次双十一,他作为备战核心人员,颇有感触:
从刚进京东的一脸懵逼,到后来参与其中,再到今年负责白条交易备战工作,这是我的第三个双十一,也是压力最大的一年。当看到监控上流量瞬间达到峰值,但是TP999稳若泰山时,我才彻底松了一口气。本次备战,小伙伴们齐心协力,从备战立项到最终收获优秀的成绩,大家都付出了很多:
各组技术架构容灾
对于业务系统而言,每次的大促都是一个斗智斗勇、架构迭代升级的过程。下面是我们大促前做的一些容灾措施。
应用层,基于RPC框架发布服务,多机房部署,异地多活,全局动态分配流量。当服务故障时,可按机房或应用或接口实现自动切换。
存储层,对于金融产品而言,数据库作为交易数据落地的介质,属于整个链路强依赖的部分,不容有失。白条的数据库模型采用DB+的模式,即mysql+分布式+nosql。数据散列分布在多库多表,且多个集群防灾互备。热点数据异步复制到nosql,对于618、双十一大促期间,性能的消耗主要来源于骤增的查询量,可视情况将高并发的查询量转移到nosql,保证交易数据正常落地。另外本次双十一存储层还做了跨机房的容灾预案、切换演练!
备战机制保障
随着用户体量的不断攀升,流量峰值的翻倍增长,相对于技术保障和架构优化,一套完善的备战机制更加重要。踩过无数坑,经过多次大促的沉淀,总结出的一套备战机制:
系统压测,共压测103个对外服务。首先是压测准备,需要我们分析系统的性能瓶颈,评估流量的峰值。其次是读压测,从单场景单机、单场景集群、复杂场景混合、跨网跨机房等多维度反复压测,直到达到预估值。最后是写压测,主要是验证数据库集群的读写瓶颈。当然还需要注意很多细节,例如数据隔离、服务隔离、资源回收等。
防刷限流,需要各个业务线按照各自的业务特点做不同的策略,例如公网可能考虑更多的是流量纬度的限流,而API服务更多是做用户纬度的规则处置。
系统监控,业务应用、数据库存储、服务器等多纬度监控,及时发现解决问题。
应急预案,对外做好降级准备,对内强依赖要做热备,按系统重要程度分级,大促前降级演练。宗旨就是:保交易。
最后,很荣幸很开心跟大家一起备战、一起战斗,白条越来越好,加油!!!
新人也担起大任
营销组研发人员葛茂新刚入职不久,但由于其扎实的技术以及强烈的责任心,使他成为这一次双十一的核心备战人员,第一次双11,他对于技术感悟良多:
在此次双十一大促期间,营销组的小伙伴们为应对白条文案露出越来越多,性能要求更加苛刻的情况,对系统进行了优化:
数据内存化
基于倒排索引数据结构,将文案数据内存化。将数据提前加载到内存中,完全基于内存计算,在大幅提升性能的同时,也降低了对缓存的调用压力。
数据容器末尾业务标识
对于需要调用外部接口的数据,在其容器末尾添加对应的标识,减少内部循环,压缩使用内存。
对外调用前置
根据数据容器末尾业务标识,将调用数据前置到业务逻辑处理之前,将调用次数从一次请求多次调用降到一次请求最多一次调用。
优化拉取数据
双十一期间服务器数量增加,为防止过于集中拉取数据,系统会根据每次拉取数据的耗时情况调整拉取偏移量并记录下来,在下次拉取时可分散拉取,从而减少对数据库和缓存的压力。
在营销小伙伴们的共同努力下,成功的将系统的响应性能提高了60%,减少了40%的对外接口调用。实现了“多,快,稳,省”(请求多,响应快,系统平稳,省去对外压力)的目标,成功助力双十一大促。
白条团队是个大家庭,因为大家毫无保留的奉献(细心的测试、给力的运维、帅气的DBA、高颜值的产品、严谨的研发等等),本次双11白条平稳度过,系统性能稳定,让我们更有信心迎接下一次备战。相信我们会越来越团结、奋进,永不服输、永不放弃!
京东金融技术说
▼▼▼
原创·实用·技术·专业
不只一技之长
我有N技在手
你看,我写,共成长!