写点什么

618 技术特辑(二)几百万人同时下单的秒杀,为什么越来越容易抢到了

发布于: 2021 年 06 月 16 日

​​摘要:几百万人同时下单,你抢到的概率为何越来越大?电商企业又是如何掌握大促期间上亿的销售数据?


本文分享自华为云社区《618 技术特辑(二)几百万人同时下单的秒杀,为什么越来越容易抢到了?》,原文作者:技术火炬手。

 

把心仪的商品加入购物车,点击结算,付款,商品页面的销量+1,库存量-1,如果只有几十个人下单,系统轻松应付,但是当这个数量变为百万、千万,就是另一番情形了。


电商企业在大促期间面临流量访问压力:网站的访问用户激增让单服务器超负荷运行,从而导致网站访问卡顿或失败,严重影响用户体验,弹性负载均衡服务可以轻松解决这个难题。

弹性负载均衡:哪里压力大往哪里搬


弹性负载均衡(ElasticLoad Balance,简称 ELB)是将访问流量根据转发策略分发到后端多台服务器的流量分发控制服务,华为云的 ELB 就可以通过流量分发扩展应用系统对外的服务能力,并通过消除单点故障提升应用系统的可用性。


面对不同的电商业务需求,ELB 可以灵活处理。举个例子,对于业务量访问较大的业务,可以通过 ELB 设置相应的转发规则,将访问量均匀的分到多个后端云服务器处理;对于存在潮汐效应的业务,可以随时在 ELB 上添加和移除后端云服务器,比如在大促第一波高潮前增加服务器,到了中期再移除,最后收尾的时候重新加上。


这样既能保证大促期间,商品页面不会因为过多访问而阻塞,也能控制成本的开支。但运营人员如何知道什么时候添加/减少服务器,什么时候为 ELB 设置转发规则,就得对整个促销的节奏以及自家产品数据有基本的预判。


所以,大促期间,除了访问流量压力,更让人头疼的则是数据的实时分析管理能力。

数据仓库:有货没货,卖了多少单,系统门清


通常情况下,电商数据主要分两块:


  • 第 1 类是面向交易的订单、商品、活动、发货等数据;

  • 第 2 类是平台运行的实时日志及用户在平台上活动产生的行为数据。


如果企业无法应对大规模在线交易及“实时分析”的业务要求,这“618”这样的大促中就无法掌握主动权。


举个例子,某运动服饰类电商企业原有系统采用传统解决方案,交易和 BI 相互独立。交易平台采用分布式中间件+单机版数据库搭建。由于该方案不具备数据的强一致性能力,在同一时刻系统中数据可能是不完整、不准确的,比如一分前已经销售了 100 单,但库存没有变化,最后为销售对单带来极大困难。为保证数据的最终一致性,交易系统数据需要通过 ETL 工具时隔数小时后同步到 BI 系统,无法做到实时分析,销售及运营主管无法实时掌握经营情况。


为了解决这个问题,他们后来采用了华为云混合负载数据仓库 DWS。DWS 采用“一库两用”的设计理念,一套数据仓库集群既可以支持超高并发、低时延的业务交易请求,同时可支撑复杂的海量数据分析和 BI 应用,减少开发和运维成本。相比于原系统,BI 系统时效性大大提高,且数据分析性能提升 3 倍。



做到数据实时一致的同时,DWS 也确保了对单数据的准确,以及运营报表的“零”时延。


DWS 小规模可支持万级 TPS 的写入能力,横向扩展后可达百万至千万级 TPS,支撑该电商企业平稳度过“双十一”、“双十二”。而且由于它原生具备分布式事务 ACID 特性,具有数据的强一致性保证,在任何时刻均可保证交易系统数据的准确性、完整性,确保对单数据无误。再加上 DWS 的高可用架构设计,提供自动化数据备份功能,可靠性达到小数点后的 11 个 9,保障业务数据不丢失。

数据可视化:销售有没有破纪录,就看它了


当我们把不同系统模块数据整合到数仓中,让它进一步清洗、整合、规则处理,实现实时、完整以及准确的数据后,还需要通过数据可视化平台推送到产品及运营人员进行可视分析。


华为商城之前就将电商大数据应用由 TIDB+Spark 集群搬迁到基于华为云以 DWS 数据库为核心的数仓平台中。


在数据的实时集成方面,华为云提供了基于 Flink、Spark 两种流计算引擎的 CS 流计算服务。随着 Flink 社区的活跃及 FlinkSQL 对应用开发者极大的门槛降低,通过 SQL 的形式即可实现流计算。


华为云将通用的消息中间件封装成对应数据输入的 source 算子,逻辑层用 SQL 作为表示,各种数据存储平台作为 sink 算子封装。如果用原生 Flink API 的方式,开发及发布一个简短的输入输出任务,起码 2 小时才可以完工,但现在一站式的流计算平台 10 分钟即可完成。 而且进行语法校验后,绝大多数问题都可以在这个环节规避,发布之后,就能通过数据可视界面,查看其输入输出的数据信息进行校验监控。


BI 数据可视模块选择的是华为云 DLV 服务,以大屏场景为主。华为商城某次大促活动需要临时加一个指挥大屏看数据,2 个开发人员加了 2 小时班,一个做前台,一个处理数据逻辑,很快完成了 0.1 版本并发布,之后再持续迭代优化效果。


图:某企业经营数据看板

核心数仓装备之外,DAYU 数据开发套件平台可极大提升发布效率,DAYU 以数据调度平台为核心作为扩展,融合了数据监控、元数据库管理、数据服务发布,这些服务华为商城大数据平台都有逐步使用。


简单介绍下其中开发人员最常用的 DLF(调度平台),以一个数据 API 发布来说,开发人员先在 DLF 上开启一个 Job,拖入三个任务:CDM(将 TIDB 任务集成到 DWS)、2 个 DWS SQL(一个做 DWR 层规则处理,一个做数据 DWD 结果呈现),然后将结果表数据通过 DAYU 的 DLG 服务进行 API 发布,其他领域即可进行调用。


电商企业上云后,解决了基础设施的难题,得以把更多的精力聚焦在业务逻辑开发上,不用再考虑服务负载均衡,容灾等等,也降低了运维的负担和人力成本。对于消费者来说,大促期间的抢购体验更好,流量高峰期下单也能抢到心仪的商品。

最后


电商在争夺消费者的战争中,技术的进步至关重要。从消费需求的产生,到购买行为的深入,从供应链到平台交易数据的分析管理,从直播带货的低时延到业务数据的安全,云计算、AI、大数据等技术的迭代,一步步改变在线购物的模式,也定义了新的商业模式。


曾经,AR/VR 技术在内容呈现和消费者互动上提供了新的可能性,随着 5G 技术的成熟,以及经历前期高投入和试错后,模拟真实场景的 VR 购物,或许会让足不出户边逛边买成为一种常态化的购物模式。


在消费者的另一端——智慧物流侧,IoT、边缘计算、机器视觉、无人驾驶,这些技术已经在改变传统的物流仓储和运送体系,从自动化立体仓储、自动输送、自动分拣到机器人作业,规整统一的自动化操作提高了运作效率。


618 是消费者购物狂欢的节日,它对电商企业也是一次大考,创新高的业绩背后考验他们的技术实力。换个角度看,618 在拉动内需的同时,也拉紧了技术创新、产业升级背后的那根绳子。


618技术特辑(一)不知不觉超预算3倍,你为何买买买停不下来?

如果你想了解为什么每当大促的时候,我们的钱包总是被掏空?这背后到底是大家自制力不够,还是电商平台太会读懂人心,我们不妨从技术维度,抽丝剥茧一探究竟。


点击关注,第一时间了解华为云新鲜技术~

发布于: 2021 年 06 月 16 日阅读数: 431
用户头像

提供全面深入的云计算技术干货 2020.07.14 加入

华为云开发者社区,提供全面深入的云计算前景分析、丰富的技术干货、程序样例,分享华为云前沿资讯动态,方便开发者快速成长与发展,欢迎提问、互动,多方位了解云计算! 传送门:https://bbs.huaweicloud.com/

评论 (1 条评论)

发布
用户头像
这属于技术文章?
2021 年 06 月 17 日 17:46
回复
没有更多了
618 技术特辑(二)几百万人同时下单的秒杀,为什么越来越容易抢到了