当前位置:网站首页>打破文件锁限制,以存储力量助力企业增长新动力
打破文件锁限制,以存储力量助力企业增长新动力
2022-08-02 13:27:00 【YAN_RONG_TECHNOLOGY】
导语:在多进程共享的应用程序中,通过“锁”来对同一个计算资源进行协同是非常常见的做法,无论在单机或多机系统、数据库、文件系统中,都需要依赖“锁”机制来避免并发访问导致的不确定结果。文件锁的优势显而易见,但它的弊端又是什么呢?今天,我们就来讲讲文件锁背后的利与弊。
什么是文件锁?
文件锁指的是,把某个文件锁定,除了当前进程能访问以外,别的进程不能访问该文件。进而又分为读锁和写锁,读锁又名共享锁,它可以用于防止进程读取的文件记录被更改。同时,文件记录可以设置多个读锁,但当有一个读锁存在时,就不能在该记录处设置写锁。写锁又名互斥锁,它用来保证文件更改记录时不被干扰,确保文件一致性和完整性,防止写丢失或读“脏”数据。文件锁可以说是,文件系统的最基本特性之一,应用程序借助文件锁可以控制其他应用对文件的并发访问。
文件锁作为一种互斥机制,可确保多个进程以安全的方式读取/写入同一个文件。之所以要对这些多进程业务进行控制,就是因为这些进程的调度是不可预期的,这种时序上的不可预期会对同一个文件资源产生竞争性访问,从而带来预料之外的结果。
为了帮助大家更好地理解,我们举一个:
假设,我们有一个叫“account.dat”的文件,用于存储账户余额,里面现在有“200”的初始值。这时,在并发系统中有两个进程,它们将要更新文件中的余额值:
进程 A:读取当前值,减去 20,然后将结果保存回文件中;
进程 B:读取当前值,加 80,然后将结果写回到文件中。
如果用小学生常用的加减法来计算,那么我们将会获得 200-20+80=260 的余额 。但是,如果进程没有按照预期顺序执行,我们可能会收获不一样的结果:
进程 A 读取文件的当前值(200),并准备进行进一步的计算;
这时,进程 B 读取相同的文件并获得当前余额(200);
进程 A 计算 200-20 并将结果 180 保存回文件;
进程 B 不知道余额已更新。因此,它仍将使用过时的值 200 计算 200 + 80,并将结果 280 写入文件。
这时,我们的 account.dat 文件中保存的余额就是 280。
由于分布式文件系统主要用于多个客户端中共享文件,客户端的应用程序并发访问文件是很常见的操作,在实际应用中,渲染、HPC 等业务都需要使用到文件锁,锁的支持对分布式文件系统而言至关重要。
如果你触发到文件锁的限制导致报错,那么头疼的问题来了,它会反复报错,而你还拿它没办法。现在,优锘科技正在面临这样的问题。
优锘科技是数字孪生可视化领域的先行者及践行者,通过可视化的手段对实体对象进行仿真、监测、分析和控制,致力于通过数字孪生可视化技术,帮助人们更好地认知与管理现实世界。
近年,随着数字孪生不断发展,有效帮助企业提升透明度与可见性,强化管理者的控制能力。在此机遇下 ,优锘科技打造了数字孪生体系,其包含自研的渲染引擎 T3D 和基于 WebGL 的物理引擎、一系列 2D&3D 的工具、业务配置工具、各类现成可用的资源,以及生态空间,方便多方满足数字孪生个性化需求。借助数字孪生技术,我们在一定程度上摆脱现实的束缚,在虚拟环境下开展一系列纯数字形式的研究。在满足了企业对数字孪生技术的要求,优锘科技旨在进一步提升企业用户使用体验,加强优锘科技技术底座。
面临挑战:优锘遇上文件锁,技术实力“被封锁”
原先,优锘科技在公有云上已经部署了数字孪生平台,并以 SaaS 的形式为用户提供服务。每个用户在使用过程中,会创建一套自己的环境,其中包括 1 套软件和 2 个 NFS 挂载点。在整个过程中,如果用户使用云上原生的文件系统时,创建并初始化 200 个 pod,那么就会因为触发文件锁限制而报错,导致用户需求无法得到满足。文件锁“锁住”的不仅仅是避免并发访问导致的不确定结果,更是“锁住”了优锘发展的脚步。
“我们曾经调研过很多公有云平台,文件锁基本都在 8192,想过很多种办法都无法解决它。”优锘科技技术人员认为,“这是一个迫在眉睫的问题,如果不能解决,我们将很难对产品进一步升级。”
在深度还原客户实际工作场景,进行细致的观察和推导后,焱融团队认为当务之急是对存储架构进行升级,提升其存储集群性能和存储通量。焱融科技在优锘科技私有化部署 YRCloudFile 存储集群,客户端通过 NFS 挂载存储的方式,让文件系统实现无文件锁,打破同时打开文件数量和并发数量等方面的限制,使技术人员顺利创建并启动 300 个环境。
除了文件锁,YRCloudFile 集群提供的 IOPS 和带宽也得到了优锘科技的认可。YRCloudFile 可以提供千万级别以上的 IOPS,百 GB 的吞吐带宽,后期可根据客户需求灵活扩展,解决了原先存储性能较低、难以扩展、资源利用率低等问题。
同时,优锘科技的要求远不止于此。为了寻求更高的技术标准,优锘科技还需要做到业务连续性。焱融科技基于优锘科技的工作特点,通过分布式架构配合负载均衡的方式,实现统一路径挂载,存储节点均摊业务压力和数据落点。当存储节点出现故障时,保障数据逻辑路径不受影响,让业务层无感知底层存储变化,依旧照常工作,最大化保证业务连续性。此外,YRCloudFile 为其提供了标准 NFS 和私有客户端访问的方式,利用私有化部署的优势,满足客户对数据安全性的要求。
高性能、高灵活性、安全性兼顾,数字孪生未来存储之选
在焱融科技的定制化解决方案帮助下,优锘科技的工作效率和客户好评率有了显著的飞跃。如今,优锘科技实现了数据资源集中管理、技术灵活落地和高效部署的改造目标。
优锘科技表示,此次与焱融科技的合作,企业实现了技术实力的突破,存储架构的升级,让企业的技术体验更上一层楼,从而能够更好地为更多企业用户提供卓越、高效率、安全和满意的数字孪生解决方案,奠定了未来优锘科技的 IT 基础设施的建立,为业务提供更坚实的后盾。
存储难题有方法:通过焱融科技 YRCloudFile 私有化部署,经过客户模拟测试,成功创建并启动 300 个环境,解决了原本触发文件锁限制而报错的问题;
部署与运维简单:短期内即可完成私有化部署,快速落地应用,且后续生产环境上线后,焱融科技技术人员随时支持运维服务,降低企业员工后期维护压力;
升级业务不停摆:焱融科技 YRCloudFile 采用了分布式架构,最大化保障业务排期正常运行。后续随着企业发展,可自由横向水平扩展,更加满足企业未来的存储需求。
焱融科技通过深入优锘科技,观察存储系统在实际应用场景中的状态,发现症结,优化参数、结合场景问题真正帮助优锘科技解决痛点,提升存储技术水平。
对于走在技术前沿的企业来说,基础设施建设尤为重要,基础设施作为产业中的关键支撑环节,基础架构在建设过程中需要在保证成本的情况下,满足企业更多的建设诉求。焱融科技 YRCloudFile 具备高性能、部署迅速、管理便捷、安全性高、可私有化部署等优势,卓越的产品性能,在兼顾性能和可靠性的同时,让企业存储架构更上一层楼,成为对技术有高要求的企业存储架构升级的最有解之一。
边栏推荐
- 【C语言】手把手带你写游戏 —— 猜数字
- Reading IDEO, Design Changes Everything
- 矩阵中的路径
- 路由-Tab切换页面
- 自动生成代码器推荐-code-gen
- [C language] Analysis of function recursion (2)
- Mysql index details (with pictures and texts)
- Taurus.MVC V3.0.3 microservice open source framework released: Make the evolution of .NET architecture easier in large concurrency.
- Seata分布式事务
- Win11怎么修改关机界面颜色?Win11修改关机界面颜色的方法
猜你喜欢
随机推荐
汉源高科千兆12光12电管理型工业以太网交换机 12千兆光12千兆电口宽温环网交换机
How to create short images and short videos from the media?How to make the click volume reach 10W?
selenium chrome driver运行时的cannot determine loading status from target frame detached问题
腾讯安全发布Tencent Cloud EdgeOne,为企业出海打造安全加速一体化服务
【C语言】细品分支结构——switch语句
Seata分布式事务
图论之Prim,最小生成树该怎么解?
吾爱第三课-修改版权和资源
qt 编译报错 No rule to make target
基于 WeihanLi.Npoi 实现excel导入时纯汉字的日期转换
拯救流浪猫 | 「喵先锋」系列数字版权盲盒明日开抢
scrapy框架初识1
Wireless vibrating wire acquisition instrument remote modification method
我的创作纪念日
最小割和对偶图(未完成)
First acquaintance of scrapy framework 1
SQL函数 USER
基于华为eNSP的企业网络规划
ttl电平与rs232电平转换电路(232电平定义)
【C语言】夏日一题 —— 求最大公约数和最小公倍数