热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

“双十一”过后,你的数据库还好吗?

刚刚过去的“双十一”对线上零售业来说是一场全方面的压力测试。在美国,十一月末的“黑色星期五”(BlackFriday)和“双十一”有着异曲同工之妙,对线上零售商来说也是一年一度的大

刚刚过去的“双十一”对线上零售业来说是一场全方面的压力测试。在美国,十一月末的“黑色星期五”(Black Friday)和“双十一”有着异曲同工之妙,对线上零售商来说也是一年一度的大考。

 

本篇文章中,我们将主要基于2019年美国的“黑色星期五”的经验,谈谈什么样的数据库才能帮助企业在购物季顺利通关。



 

 

去年的“黑色星期五”是美国史上最大的节日购物季,销售额预计将首次超过一万亿美元。

 

然而就在这个重要关头,Nordstrom Rack(类似奥特莱斯的品牌折扣店)和Costco(美国最大的连锁会员制仓储量贩店)的网站却遇到了问题。他们的网站先是完全陷入瘫痪,根本无法访问,随后Costco在网页上贴出了“响应时长较长”的告示。

  

2019年黑色星期五前后,Costco的首页上方黄色条栏中出现了“The website is currently experiencing slow response times.(网站现在响应时间较长)”的提示消息。

Source: NBR.com

 

其实这并不是什么新鲜事,在2018年的“黑色星期五”期间,美国的另一家大型服装零售商J.Crew就已经有过类似的经历了——他们因网站完全崩溃而损失了70万美金。Nordstrom Rack和Costco可能以为这种事儿不会发生在他们身上,然而他们错了,并且他们为此付出了沉重的代价。

 

很显然,如果顾客根本没法开始购物,商家将很难达到电商销售目标。根据行业观察家的估计,Costco仅仅一天的网站故障就让他们损失了将近一千一百万美金。除此之外,想要在“黑色星期五”大采购的顾客们也很可能会因为糟糕的网站体验而变得兴趣缺缺。

 

顾客们在经历一次负面体验后,不再支持该品牌的概率提高了四倍。要知道,你的竞争者们与你之间只有"点几次鼠标"的距离。所以为了你的利益着想,你应该尽一切努力确保你的网站运行如常。

 

直白地说,当你的顾客想立刻得到什么东西,但是你的技术栈不能满足这些需求时,你就该升级你的数据库了。要不然,在这一年一度的盛大时刻,你将不能跟上顾客的需求——这将同时惹烦你的顾客并搞砸你的收益。

 

像是“黑色星期五”和“双十一”这样的购物季可能成为零售商的高光时刻,但也可能让零售商从此一蹶不振——你可能在此期间大把大把地赚钱,同时还大幅提高了顾客的忠诚度;也可能没能完成目标,同时还要处理客户的抱怨、短缺的收益以及受损的品牌形象。

 



 

 

相比出这些问题之后再花一整年去收拾烂摊子,对购物季及随后间歇性的运行中断的最佳处理方式,就是根本不要去经历这些。

 

怎么才能做到这点呢?提前做好准备,确保当疯狂的购物者涌入你的网站或APP时,网站的数据库可以处理大量的数据涌入而不会出现宕机问题。好消息是这并没有听起来那么难做到——事实上,如果你选择了正确的数据库,这简直轻而易举。

 

如何选择正确的数据库?以下五点可能是你需要关注的:

 

可用性:

你承受不起在任何一个主要的活动中存在宕机时间,所以寻找一个可以提供100%在线时间的解决方案吧。这取决于你的运营规模,不过仅仅几分钟的宕机就可能引起非常多的损失。

 

云原生:

正确的数据库应该能够支持混合云和多云环境,让你能够在离顾客最近的多个地理位置运行你的程序。这是一种保证每个顾客都能拥有即时的且不间断的体验的简单方法——无论是住在你的公司总部旁边的顾客或者是住在地球另一端的顾客。

 

伸缩性和分布式: 

为了达到最优的效果,寻找可以简便地伸缩并且横跨内部数据中心和云提供商分布的数据库吧。在正确的分布和复制策略的加持下,你的数据库可以具有高响应性且能并发处理上百万条事务。

 

安全性:

由于顾客会提供诸如银行卡卡号和付款信息等敏感信息,你会希望能够根据GDPR等条例做好合规,你的数据库需要高度的安全性。你应该非常不乐见自己因为违反这类法律而被罚款。

 

性能: 

由于顾客会提供诸如银行卡卡号和付款信息等敏感信息,你会希望能够根据GDPR等条例做好合规,你的数据库需要高度的安全性。你应该非常不乐见自己因为违反这类法律而被罚款。



 

与前文中提到的Nordstrom Rack和Costco类似的是,梅西百货也曾面临流量剧增的问题。

  

作为全世界规模最大且历史最悠久的百货商店之一的梅西百货(Macy’s),其电商平台和线上商店的快速成长迫使他们不得不转向现代的方式来处理大量的数据——梅西百货需要的是比他们曾用的关系型数据库更为强大且灵活的解决方案。

 

在使用DSE后,梅西百货的商品目录增加了10倍,同时其商品目录数据的刷新时间缩短了6倍。 

 

 

DataStax Enterprise帮助梅西百货达到了这些目标。在使用DSE后,梅西百货的商品目录在没出现任何问题的前提下增加了10倍,同时其商品目录数据的刷新时间缩短了6倍。不仅如此,梅西百货在APP上的销售额和企业的股票价格都有大幅成长。

 

 

“我再也不需要在夜晚担忧商品目录,因为它已经得到了10倍的成长。我们很容易就做到了,这在技术上和商业上都不是问题。如果他们想要再增加商品目录,我们还可以再增加,而且做到这些其实并不会花很多钱。我不再认为非得要拥有关系型数据库这种技术了。”

 

——梅西百货高级架构师Peter Connollly

 

DataStax Enterprise的可用性和伸缩性支持零售企业为顾客们提供无缝的使用体验,从而提高顾客的满意度和忠诚度,并为企业带来更好的形象和更多的利润。

 

对于DataStax Enterprise (DSE)来说,连续的可用性和无限的伸缩性是被建构在其核心架构中的。因为DSE采用了一种无主结构(masterless architecture),在集群中的任意一个节点都可以回应读请求或写请求。

 

每一个节点都是完全相同的、独立自治的且100%功能在线的。这意味着任意一个节点都能处理前来的请求,随后数据会在集群的节点间被复制。这种架构通过极高的可用性和无宕机时间,为购物季提供了无缝且持续在线的购物体验。

 



推荐阅读
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • Tomcat/Jetty为何选择扩展线程池而不是使用JDK原生线程池?
    本文探讨了Tomcat和Jetty选择扩展线程池而不是使用JDK原生线程池的原因。通过比较IO密集型任务和CPU密集型任务的特点,解释了为何Tomcat和Jetty需要扩展线程池来提高并发度和任务处理速度。同时,介绍了JDK原生线程池的工作流程。 ... [详细]
  • 14亿人的大项目,腾讯云数据库拿下!
    全国人 ... [详细]
  • 关于我们EMQ是一家全球领先的开源物联网基础设施软件供应商,服务新产业周期的IoT&5G、边缘计算与云计算市场,交付全球领先的开源物联网消息服务器和流处理数据 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 数字账号安全与数据资产问题的研究及解决方案
    本文研究了数字账号安全与数据资产问题,并提出了解决方案。近期,大量QQ账号被盗事件引起了广泛关注。欺诈者对数字账号的价值认识超过了账号主人,因此他们不断攻击和盗用账号。然而,平台和账号主人对账号安全问题的态度不正确,只有用户自身意识到问题的严重性并采取行动,才能推动平台优先解决这些问题。本文旨在提醒用户关注账号安全,并呼吁平台承担起更多的责任。令牌云团队对此进行了长期深入的研究,并提出了相应的解决方案。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • 本文介绍了OpenStack的逻辑概念以及其构成简介,包括了软件开源项目、基础设施资源管理平台、三大核心组件等内容。同时还介绍了Horizon(UI模块)等相关信息。 ... [详细]
  • SpringBoot整合SpringSecurity+JWT实现单点登录
    SpringBoot整合SpringSecurity+JWT实现单点登录,Go语言社区,Golang程序员人脉社 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了软件测试知识点之数据库压力测试方法小结相关的知识,希望对你有一定的参考价值。 ... [详细]
  • ElasticSerach初探第一篇认识ES+环境搭建+简单MySQL数据同步+SpringBoot整合ES
    一、认识ElasticSearch是一个基于Lucene的开源搜索引擎,通过简单的RESTfulAPI来隐藏Lucene的复杂性。全文搜索,分析系统&# ... [详细]
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • ejava,刘聪dejava
    本文目录一览:1、什么是Java?2、java ... [详细]
  • {moduleinfo:{card_count:[{count_phone:1,count:1}],search_count:[{count_phone:4 ... [详细]
  • 浅析对象 VO、DTO、DO、PO 概念
    作者|CatQi链接|cnblogs.comqixuejiap4390086.html前言由于此订阅号换了个皮肤,导致用户接受文章不及时。读者可以打开订阅号「Web项 ... [详细]
author-avatar
撩人过得更好
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有