京东云发布云原生消息中间件JCQ 保障电商万亿级流量场景

随着IT技术架构的升级和变迁,消息中间件在不断演进中扩大边界,与业务应用直接关联,成为实时响应客户需求,帮助企业把握商业机会,创造增量价值的有效工具 。
作为高并发系统的核心组件之一,消息中间件是支撑超大规模业务快速迭代,提升开发效率和保障系统稳定性的重要组成部分,向下屏蔽异构的软硬件计算资源,向上提供开发、运维等全生命周期的统一计算环境 。在京东618、11.11、春晚红包等极限流量考验下,催生出京东云面向超大规模应用,自主研发的金融级中间件技术体系,将每一次超大规模流量冲击常态化应对 。
近日,京东云在“2022产业融合新品发布会:产业数字基础设施专场”重磅发布京东云新一代消息中间件(JD Cloud Message Queue,简称JCQ) 。作为异步、削峰、解耦的利器,JCQ能够快速实现系统复杂度降维,有效的解决产业融合时代的系统复杂性问题 。
京东云发布云原生消息中间件JCQ 保障电商万亿级流量场景
文章图片

电商场景应用需求
消息中间件是分布式系统中的重要组件,主要应用在实时性消息处理要求不高,同时一份数据可能应用在多处的场景,保证系统的稳定可靠、高性能、安全并且多协议统一,电商平台就是其中一个较典型的场景 。
异步处理
在电商场景,特别是在每年的618秒杀、双11抢购活动中,用户注册需要通过注册邮件或短信完成验证,由于CPU在单位时间的处理请求数是一定的,传统串行和并行的方式在并发量、响应时间上效率较低 。将注册邮件或短信写入消息中间件进行异步处理后,能够成倍提升效率 。
流量削峰
由于上下游关联系统的处理能力存在差异,当流量洪峰突然来袭时,会对处理能力低的系统造成冲击,造成系统崩溃 。通过消息中间件服务堆积订单等信息,在下游系统有能力处理消息时再做处理,避免系统崩溃 。
应用解耦
当用户下单后,每卖掉一个SKU,订单系统会通知库存系统扣减库存数,一旦用户成功支付,还将更新订单状态 。如果库存系统受冲击无法访问,订单减库存将会失败,最终导致订单失败 。引入消息中间件后,通过让出库和发货等信息从队列中读取任务按步骤执行,从而实现订单系统和库存系统的解耦 。
京东云JCQ,构筑高可靠数据通道服务
作为一款云原生产品,京东云JCQ能够给用户提供开箱即用,按需使用的体验 。用户无需提前评估业务量、定义规格,也不需要在使用过程中关心系统容量问题,只要关注自身的业务本身 。JCQ是一个Serverless化的消息队列服务,对外提供逻辑的topic,用户不用感知物理集群的存在以及其规模大小,按需随时创建Topic使用即可 。通过采用计算存储分离的架构,将计算层和存储层分离,使其具备高度的弹性;结合数据自动平衡的能力,JCQ在性能和容量上可以接近于无限扩展,并且全程用户无感知 。
在服务的可用性和数据可靠性方面,JCQ提供99.999999%的数据可靠性以及99.99%的服务可用性承诺,除了通过传统一致性共识协议来保证之外,JCQ的计算和存储节点都具备机架、机柜以及AZ自动感知等反亲和能力 。
京东云发布云原生消息中间件JCQ 保障电商万亿级流量场景
文章图片

JCQ几乎承接了整个京东集团的消息服务,日常每天的消息量超过6万亿条 。大促期间超过10万亿条,大促峰值超过3.6亿条每秒;在延时方面,在同步刷盘的场景下,TP99的性能指标依然保持在2ms以内 。
在京东实验室完成多场景的性能测试后,相比一些开源消息队列服务,JCQ在高吞吐和低延时特性上都有较大优势,尤其在低配的机械硬盘环境下,性能优势更加明显 。此外,在数据安全方面,JCQ提供了数据信道加密和数据落盘加密、租户数据隔离等安全保障,安全级别达到金融级的严苛要求,并通过了CSA STAR、网信办等多家权威安全机构的认证 。