加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 服务器 > 安全 > 正文

京东商城交易平台的高可用架构之路

发布时间:2021-02-24 23:15:31 所属栏目:安全 来源:网络整理
导读:《京东商城交易平台的高可用架构之路》要点: 本文介绍了京东商城交易平台的高可用架构之路,希望对您有用。如果有疑问,可以联系我们。 作者:王晓钟 编辑:木环、郭蕾 据腾讯科技报道,6 月 18 日零点,京东全民年中购物节拉开了高潮的序幕.第一个小时的销售
副标题[/!--empirenews.page--]

《京东商城交易平台的高可用架构之路》要点:
本文介绍了京东商城交易平台的高可用架构之路,希望对您有用。如果有疑问,可以联系我们。

京东商城

作者:王晓钟

编辑:木环、郭蕾

据腾讯科技报道,6 月 18 日零点,京东全民年中购物节拉开了高潮的序幕.第一个小时的销售额超过去年同期的 250%.从凌晨开始的海量订单让 6 月 1 日就拉开序幕的京东年中购物节奏出最强音,大量用户瞬间涌入,峰值订单被不断刷新.为了应对如此大规模的流量增长,京东研发团队几乎全年都在高筑墙、广积粮,一直着力从技术层面为用户提供流畅的交易体验,以保证在峰值交易时期系统的高可用性.在京东整个电商体系中,交易系统占据着其中的半壁江山,购物车、结算、库存、价格等相关的环节都包含在其中,可以说交易系统的高可用能力基本上决定了整个京东商城的高可用能力.在过去的一年时间里,京东的交易系统做了哪些迭代和优化?今年又有哪些创新?整体的交易系统规划是怎么样的?InfoQ 记者带着这些问题采访了京东商城交易平台高级总监王晓钟.

受访嘉宾介绍

王晓钟,京东商城交易平台高级总监,京东交易黄金流程与智慧营销生态系统的掌舵人,带领的产品与研发团队为京东商城提供了核心交易的系统保证.

InfoQ:能否整体介绍下交易平台目前的架构体系?

王晓钟:交易平台负责商品、价格、用户、库存、订单等电商核心基础信息的中心化管理,以及对购物车、结算页、优惠券 / 礼品卡、订单中心等黄金交易流程的管控和平台化服务.交易平台致力于技术改变生活,打造智慧营销的交易平台.为用户提供黄金交易流程;为客户提供智慧营销解决方案包含促销建议、智能库存定位等智慧营销工具;为研发团队提供稳定、可靠的交易服务.

架构

  1. 渠道 是交易的流量入口来源,目前主要包含几大部分,PC、APP、微信、手 Q 等.目前 APP 入口已经占据了整体流量的 70% 以上.
  2. 组件 完成对现有基础服务的抽象与整合,将现有服务资源以多元化的方式展示给外界,灵活的组织并支持多种协议的交互,最终实现了系统的模块化、服务平台化、功能配置化.组件最大限度的减少外界对内部逻辑的耦合,从而实现对需求快速响应.
  1. 基础服务 位于整个黄金流程的最底层,其扮演者交易平台心脏的角色.其中商品服务、价格服务、库存服务、用户服务、购物车等更是核心中的核心.
  2. 中间件、基础设施 是基础服务的基石,对业务系统提供高性能,高可用的技术支撑.

InfoQ:过去一年,交易平台在保证底层的基础平台稳固方面做了哪些事情?有哪些点读者是可以参考学习的?

王晓钟:除了我们一直在做的、已经形成常规的工作,比如线上压测、性能优化、扩容、故障切换、限流、降级之外,过去一年,我们在系统维稳方面做了一些精细化的工作.

  1. 核心调用链监控.在黄金交易流程中的各个服务入口点和服务相关依赖、调用方等进行联合监控.当服务性能下降、可用率下降时,可以快速的定位到故障点.把监控和故障解决方案联动起来,比如一键切换、服务降级、限流等,可以快速的发现和解决问题.
  2. 自动切换.对于成熟的切换流程,比如数据库、缓存、服务等节点的客户端,当检测到故障时,可以根据策略自动切换到健康的节点,同时在故障节点恢复后自动切换回来,减少人工操作的错误和耗时,提高系统的可用率.
  3. 异步化编程模式.部分服务通过彻底的异步化改造来提升吞吐量,还是有一些效果.但是由于纯异步化对于现有系统的改造还是挺大的,所以目前还在尝试前行阶段.
  4. 共享资源池.提前准备一些资源共享池,各服务混用,平时设置较低的权重.当某个服务的常规资源组不足时,则增加其在共享池中的权重,这样可以快速的使用资源,而不用临时扩容.
  5. 全链路压测.从入口开始模拟用户的行为进行压测,流量通过依赖传递,从浏览、搜索,到提交订单以及最后的生产,自动覆盖到链路中的所有环节.配合上面提到的核心调用链监控,解决以往只是单服务的压测,覆盖面不全的问题.

随着业务的发展,功能的复杂度也在不断增加,定位故障原因变的困难了起来,很多时候线上发生故障大部分的时间都在定位问题,故障的解决只要有预案就可以很快处理.调用链监控就很重要,可以站在全局的角度,快速的定位问题,和故障预案处理结合可以解决我们的痛点.

随着服务的不断扩容,机器数量的增加,出现问题时,故障修复的速度变慢,自动化的故障切换可以使人工解放出来,处理更重要的事情,可以让大家不用总是在半夜起来处理故障.

InfoQ:目前交易平台的服务是依据什么维度进行划分的?

王晓钟:目前交易平台主要依据业务能力来划分服务的:购物车、结算页、促销、价格、库存、商品、用户等,为 PC,手机,微信等渠道提供高可靠的大中台服务.

这种划分模式好处在于:

  1. 架构稳定,因为业务能力相对稳定和相互独立.
  2. 开发团队是自主的,围绕着交付业务价值而不是技术特性来组织.
  3. 服务之间共同合作,松耦合.

InfoQ:能否分别从业务、系统、基础设施三个层面谈谈你们的监控体系方案?

王晓钟:在京东这样的大规模分布式系统面前,每时每刻服务器可能都宕机,网络随时可能都在抖动,大量接口调用量日均过亿,同时具有流量聚集效应的促销每天都会有好几波,如果没有一套强大的监控体系,我们就像睁眼瞎一样.经过多年的努力,京东目前已经形成多套监控系统,建立了比较完善的监控体系,时刻监视着系统的健康状态,并在发现问题时第一时间进行预警:

1)业务层面的监控,主要是核心业务指标,比如实时订单量,并按渠道、省份、运营商、机房、品类、活动等各个维度进行细分,从而在及时发现核心业务指标变化的同时,能够快速定位、排查问题,并做出应急响应.

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读