阿里云文件存储(NAS)助力业务系统承载双十一尖峰流量

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 2018天猫双11,阿里云文件存储支撑了关键业务的消息系统存储,在应对几十倍于平时的大流量时,系统表现稳定,帮助业务系统完美度过尖峰流量的考验。本文将介绍阿里云文件存储的背景,以及文件存储是如何来保障业务系统应对高压力的。

2018天猫双11全球狂欢节,全天成交额再次刷新纪录达到2135亿元,其中总成交额在开场后仅仅用了205秒即突破100亿元,峰值的交易量达到惊人的高度,背后离不开阿里云大数据计算和存储能力的支撑。在整个交易的链路上,账单业务是一个重要的环节,尤其对商家系统来说,需要定期对账,账单子系统出现一点点问题都会影响商家的运营,2018的双十一,承载账单的消息系统把全网卖家账单系统60%的流量托付给了阿里云文件存储。在110点的峰值交易时刻,账单消息系统的写入流量瞬间达到日常流量的60倍以上,阿里云文件存储表现稳定,顺利扛下这一波洪峰,帮助业务系统完美度过0点的考验。本文将介绍阿里云文件存储的背景,以及文件存储是如何来保障业务系统应对高压力的。

什么是云上的NAS文件存储

在阿里云的发展早期,在云服务器ECS上运行的应用需要进行数据存储时,有两个选择:

  • 云盘:兼容应用的IO接口,但是和物理机使用硬盘一样,云盘和ECS绑定,单块云盘只能特定ECS访问;
  • OSS:多ECS可以共享访问,但需要应用调整IO接口,使用OSS的REST接口;

但如果应用既想保留原有的IO接口(一般是POSIX接口),又需要实现多ECS共享存储,就没有很好的解决办法。NAS文件存储在这样的背景下应运而生,针对传统企业级应用的存储需求,通过标准NAS系统协议(NFS/SMB),为ECS提供共享存储,支持随机读写以及PB级别容量,并且支持容量动态扩展,方便业务从小规模逐渐扩大过程中,不需要再担心存储容量的扩容以及运维问题。

阿里云NAS文件系统从2016年推出至今,已经应用在丰富的业务场景中,包括高HPC性能计算、Web服务和内容管理、媒体和娱乐处理工作流、容器存储、基因和生命科学数据存储处理,深度学习大数据处理等等,很好地服务了云上的客户。

NAS文件存储架构设计

阿里云文件存储是一个可共享访问,弹性扩展,高可靠,高性能的分布式文件系统,其架构设计如图1所示。

9bb252706ea9f050f20452acc267e0eb80ffc6e0

图1: 阿里云文件存储架构

整个技术栈分五层,第一层是各类计算节点(比如ECSDockerGPU等)不同操作系统使用标准文件协议NFS/SMB访问文件存储。第二层是阿里云网络负载均衡,把客户端请求轮转发送到前端机。第三层是负责协议处理的前端机,具备scale-out的能力。第四层是文件系统元数据管理,实现高效的数据结构保证元数据的快速操作。第五层是元数据和数据的持久化存储,使用阿里云盘古存储系统。

整个架构通过盘古保证高可靠,另外通过文件存储高效的数据和元数据管理技术实现scale-out、高可用,超高的数据访问性能以及一系列企业级存储的特性,如图2所示。

366326bb801d4887622e27317d956d384d7a3d6a

2 阿里云文件存储特性

账单业务消息系统适配文件存储

随着云上文件存储的知名度越来越广,阿里集团的很多内部业务也开始接入文件存储,其中就包括支撑账单业务的消息系统。

架构设计

消息系统的存储本来使用的是本地盘,这样最主要的问题就是当单机故障时,存储在磁盘上的数据没法及时被其他主机访问,其他主机不能快速接管原来主机的业务,缺乏容灾的能力,对应用的影响非常大。而使用文件存储天然具有多机共享访问的能力,可以很好的解决这个问题。

但是,如果只是简简单单地做一个替换,把本地存储换成文件存储,如图3那样,

6d706b5453aed09516740914df4ccd8eaa7bb185

图3 本地存储替换成文件存储(共享访问)

多台ECS通过NFSv4挂载同一个文件系统,每个ECS会使用到一个文件系统里的多个子目录作为消息文件的存储空间,虽然解决了前述的容灾问题,但这个架构的问题是过于依赖单点的存储,万一单文件系统发生故障,所有消息队列的访问都会受到影响,因此需要对架构进行进一步调整。调整的基本思路就是将流量尽量打散到多个文件系统上,同时又避免对业务方软件的改造。

调整后的架构入图4所示,为业务创建多个虚拟云机房,每个虚拟云机房的消息系统存储由4个NAS文件系统来承载,消息系统计算节点ECS会同时挂载4个文件系统,并且通过软链接的方式在‘nasroot’目录下看到多个队列,对业务使用上来说,这些队列对应的目录是在同一个文件系统(原来的架构)还是多个文件系统(新的架构)是不感知的,这样就将业务需要改造的量最小化,只需要在部署时候进行相应的自动化(挂载和创建软链接)即可,但带来的好处是巨大的,万一发生单文件系统的故障,业务可以自动分流到存活的文件系统,可以有效应对各种故障场景。

c7859fe91217a7e2f43c9f62422dedc7ff16bde6

4 架构优化

细节优化

相对于使用本地盘,计算存储分离架构下,如果应对存储测的异常和故障呢?标准的NFS挂载下,如果服务端出现故障或者网络发生故障,客户端访问文件存储将会是完全hang住,直到服务或者网络恢复为止。针对这个问题,消息系统进行了相应改造,业务系统对消息的一致性保障进行了优化,可以支持写消息失败。这样就可以使用NFS的soft挂载模式,当服务端出现故障或者网络发生故障时,应用程序将不会再是完全hang住,而是能迅速监测到IOError,并立即采取对应的行动。结合前述的架构设计,应用程序能进行快速响应,把流量分流到其他存活的文件系统上,快速恢复。

双十一的考验

经过架构设计和细节优化,文件存储的scale-out能力在双十一尖峰发挥出了应有的能力,即使在0点时刻流量是平时的60倍以上,表现依然稳定,在文件存储的给力表现下,业务系统的响应依然如日常一样顺滑,完全感觉不出超大流量对系统的冲击。

总结

阿里云文件存储为云上业务提供支持标准接口(POSIX)以及标准文件访问协议(NFSSMB)的存储服务,并且具有简单易用、安全可靠、性能和容量scale-out等特性。经过双十一的锤炼,文件存储的服务能力必将继续上升一个台阶,将提升后的能力以普惠技术的形式向云上各行各业输出,推动社会生产力的发展。

相关实践学习
基于ECS和NAS搭建个人网盘
本场景主要介绍如何基于ECS和NAS快速搭建个人网盘。
阿里云文件存储 NAS 使用教程
阿里云文件存储(Network Attached Storage,简称NAS)是面向阿里云ECS实例、HPC和Docker的文件存储服务,提供标准的文件访问协议,用户无需对现有应用做任何修改,即可使用具备无限容量及性能扩展、单一命名空间、多共享、高可靠和高可用等特性的分布式文件系统。 产品详情:https://www.aliyun.com/product/nas
目录
相关文章
|
3月前
阿里云ARMS的新版和老版界面是两套不同的系统
阿里云ARMS的新版和老版界面是两套不同的系统
54 2
|
3月前
|
弹性计算 Linux Shell
阿里云ecs linux系统如何进行系统盘的扩容
【1月更文挑战第25天】【1月更文挑战第122篇】阿里云ecs linux系统如何进行系统盘的扩容
212 1
|
1月前
|
存储 人工智能 自然语言处理
“智能+”时代,深维智信如何借助阿里云打造AI内容生成系统
随着数字经济的发展,线上数字化远程销售模式越来越成为一种主流,销售流程也演变为线上视频会议、线下拜访等多种方式的结合。根据Gartner报告,到2025 年60%的B2B 销售组织将从基于经验和直觉的销售转变为数据驱动的销售,将销售流程、销售数据、销售分析合并形成一致的运营实践。
405 0
“智能+”时代,深维智信如何借助阿里云打造AI内容生成系统
|
1月前
|
消息中间件 编解码 运维
阿里云 Serverless 异步任务处理系统在数据分析领域的应用
本文主要介绍异步任务处理系统中的数据分析,函数计算异步任务最佳实践-Kafka ETL,函数计算异步任务最佳实践-音视频处理等。
175311 348
|
1月前
|
存储 域名解析 应用服务中间件
阿里云OSS对象存储,实现内网访问,免流量费用
阿里云OSS对象存储,实现内网访问,免流量费用
433 1
|
1月前
|
自然语言处理 算法 关系型数据库
阿里云PAI大模型RAG对话系统最佳实践
本文为大模型RAG对话系统最佳实践,旨在指引AI开发人员如何有效地结合LLM大语言模型的推理能力和外部知识库检索增强技术,从而显著提升对话系统的性能,使其能更加灵活地返回用户查询的内容。适用于问答、摘要生成和其他依赖外部知识的自然语言处理任务。通过该实践,您可以掌握构建一个大模型RAG对话系统的完整开发链路。
|
2月前
|
弹性计算 安全 Linux
阿里云ECS Linux系统漏洞修复详细教程
阿里云ECS Linux系统漏洞修复详细教程
|
2月前
|
弹性计算
2024阿里云服务器带宽计费价格表_流量费用_固定带宽报价
2024阿里云服务器带宽计费价格表_流量费用_固定带宽报价,北京地域服务器按固定带宽计费一个月23元/M,按使用流量计费0.8元/GB
366 5
|
2月前
|
弹性计算
阿里云服务器“带宽计费模式”详细说明_2024固定带宽和流量详解
阿里云服务器“带宽计费模式”详细说明_2024固定带宽和流量详解,按固定带宽是指直接购买多少M带宽,比如1M、5M、10M、100M等,阿里云直接分配用户所购买的带宽值,根据带宽大小先付费再使用;按使用流量是先设置一个带宽峰值,然后根据实际公网产生的出流量来计算费用,先使用后付费

相关产品

  • 文件存储NAS