CN108512930B - 一种共享文件的管理方法、装置、服务器和存储介质 - Google Patents
一种共享文件的管理方法、装置、服务器和存储介质 Download PDFInfo
- Publication number
- CN108512930B CN108512930B CN201810322050.XA CN201810322050A CN108512930B CN 108512930 B CN108512930 B CN 108512930B CN 201810322050 A CN201810322050 A CN 201810322050A CN 108512930 B CN108512930 B CN 108512930B
- Authority
- CN
- China
- Prior art keywords
- shared file
- version number
- client
- write
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种共享文件的管理方法、装置、服务器和存储介质,该方法包括:接收客户端发起的查询请求;向所述客户端发送版本号,并反馈所述共享文件的写入状态;接收客户端发起的写入数据请求;其中,所述写入数据请求仅在所述共享文件的写入状态为空闲时发起;如果所述写入数据请求所包括的版本号与本服务器记录的当前的版本号相同,则修改所述版本号,允许所述客户端向所述共享文件写入数据,将所述共享文件的写入状态记录为忙碌;如果所述写入数据请求所包含的版本号与本服务器记录的当前的版本号不相同,则禁止所述客户端向所述共享文件写入数据。实施本发明实施例,可以实现确保多个客户端向共享文件写入数据的操作是依次进行的。
Description
技术领域
本发明实施例涉及服务器资源管理技术,尤其涉及一种共享文件的管理方法、装置、服务器和存储介质。
背景技术
当多个客户端向服务器请求在一个共享文件中写入数据时,服务器需要保证这些写入操作是依次执行的,以避免多个客户端同时向共享文件写入数据引发数据存储的逻辑错误。现有技术的实现方法是:客户端在写入数据之前,先查询服务器上共享文件当前是否正在写入数据,如果该共享文件正在被其他客户端写入数据,则该客户端不会发起写入数据请求,如果该共享文件处于未被写入的空闲状态,则该客户端可以发起写入数据请求。
发明人在实现本发明的过程中,发现现有技术存在以下缺陷:当多个客户端在接近的时间,甚至同时查询共享文件的写入状态时,可能都会查询到共享文件的写入状态为空闲,此时多个客户端都认为自身可以写入数据因而向共享文件写入数据,但服务器仅能存储最后一个客户端写入的数据,即该技术方案仍有可能出现由于多个客户端同时向共享文件写入数据而引发的逻辑错误。
发明内容
本发明提供一种共享文件的管理方法、装置、服务器和存储介质,以实现确保多个客户端向共享文件写入数据的操作是依次进行的。
第一方面,本发明实施例提供了一种共享文件的管理方法,包括:
接收客户端发起的查询请求;其中,所述查询请求用于请求查询本服务器上的共享文件当前的版本号,以及查询本服务器上的共享文件的写入状态;
向所述客户端发送所述版本号,并反馈所述共享文件的写入状态;
接收客户端发起的写入数据请求;其中,所述写入数据请求仅在所述共享文件的写入状态为空闲时发起,所述写入数据请求包括所述客户端查询到的版本号;
如果所述写入数据请求所包括的版本号与本服务器记录的当前的版本号相同,则修改所述版本号,允许所述客户端向所述共享文件写入数据,将所述共享文件的写入状态记录为忙碌;
如果所述写入数据请求所包含的版本号与本服务器记录的当前的版本号不相同,则禁止所述客户端向所述共享文件写入数据。
第二方面,本发明实施例还提供了一种共享文件的管理装置,该装置包括:
第一接收模块,用于接收客户端发起的查询请求;其中,所述查询请求用于请求查询本服务器上的共享文件当前的版本号,以及查询本服务器上的共享文件的写入状态;
响应模块,用于向所述客户端发送所述版本号,并反馈所述共享文件的写入状态;
第二接收模块,用于接收客户端发起的写入数据请求;其中,所述写入数据请求仅在所述共享文件的写入状态为空闲时发起,所述写入数据请求包括所述客户端查询到的版本号;
允许写入模块,用于如果所述写入数据请求所包括的版本号与本服务器记录的当前的版本号相同,则修改所述版本号,允许所述客户端向所述共享文件写入数据,将所述共享文件的写入状态记录为忙碌;
禁止写入模块,用于如果所述写入数据请求所包含的版本号与本服务器记录的当前的版本号不相同,则禁止所述客户端向所述共享文件写入数据。
第三方面,本发明实施例还提供了一种服务器,所述服务器用于存储共享文件,所述服务器包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例提供的共享文件的管理方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例提供的共享文件的管理方法。
本发明实施例的技术方案,在客户端查询到共享文件的写入状态为空闲后发起写入数据请求时,服务器需要核对客户端在查询写入状态时所查询到的版本号,仅在该版本号与服务器当前记录的版本号一致时允许客户端写入数据并修改版本号,则如果在一个客户端查询写入状态到服务器响应该客户端的写入数据请求期间有其他客户端查询了写入状态并且成功变更了写入状态,则服务器在响应该客户端发起的写入数据请求时,版本号已被其他客户端的写入数据请求触发修改了,该客户端会因为版本号与服务器当前记录的不一致而被禁止向共享文件写入数据。从而解决了现有技术多个客户端同时向共享文件写入数据引发逻辑错误的技术问题,确保了多个客户端向共享文件写入数据的操作是依次进行的。
附图说明
图1是本发明实施例一中的共享文件的管理方法的流程图;
图2是本发明实施例一中的共享文件的管理方法的时序示意图;
图3是本发明实施例二中的共享文件的管理方法的流程图;
图4是本发明实施例三中的共享文件的管理装置的结构示意图;
图5是本发明实施例四中的服务器的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
此外,在说明书和权利要求书中的术语第一、第二、第三等仅用于区别相同技术特征的描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量,也不一定描述次序或时间顺序。在合适的情况下术语是可以互换的。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。
实施例一
图1为本发明实施例一提供的共享文件的管理方法的流程图,本实施例可适用于服务器对其存储的共享文件进行管理的情况,该方法可以由共享文件的管理装置来执行,该装置集成于服务器中。
服务器,也称伺服器,是提供计算服务的设备。服务器需要响应服务请求,并进行处理。服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似。本发明实施例中的服务器,是用于存储共享文件的服务器。
共享文件,是指可分享给多个客户端,供多个客户端读取和写入数据的文件。共享文件可以存放于服务器中,服务器与客户端之间根据预先设定的协议实现通信连接,客户端通过连接服务器可以读写共享文件。
客户端,或称为用户端,是指与服务器相对应,为用户提供本地服务的应用程序或运行该应用程序的终端。为用户提供本地服务的应用程序具有多样性,例如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端软件等。对于这一类应用程序,需要网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,电子邮件服务等等。在客户端和服务器端之间需要建立特定的通信连接,来保证应用程序的正常运行。在本实施例中,客户端和服务器协同工作,为用户提供的服务包括共享文件的存储和访问。
本实施例提供的共享文件的管理方法,具体包括如下步骤110至150。
步骤110、接收客户端发起的查询请求。
其中,所述查询请求用于请求查询本服务器上的共享文件当前的版本号,以及查询本服务器上的共享文件的写入状态。
本发明实施例中的版本号,用于区别多次不同的向共享文件写入数据的操作。具体地,按照本发明实施例提供的共享文件的管理方法,向共享文件写入数据的操作会导致版本号发生变化。版本号可以初始化为任意值,版本号变化的规则可以预先设定并存储于服务器中,供共享文件的管理方法实现时调用。
本发明实施例中的共享文件的写入状态,指共享文件是否被写入数据的状态,包括两种状态:一是共享文件正在被写入数据,即写入状态为忙碌;二是共享文件没有被写入数据,即写入状态为空闲。写入状态可以由编码数据表示,例如用二进制数0表示空闲,1表示忙碌。也可以使用其他编码规则构造编码数据。
本发明实施例中的写入数据,包括对数据的增加、删除和修改操作中的一项或多项。
服务器接收客户端发起的请求,遵循服务器与客户端之间的通信协议。服务器与客户端可以是通过局域网、互联网或其他通信网络通信,不同的通信网络及不同的服务内容具有不同的通信协议。
步骤120、向所述客户端发送所述版本号,并反馈所述共享文件的写入状态。
步骤120是服务器对于上述查询请求的响应操作。
步骤130、接收客户端发起的写入数据请求;其中,所述写入数据请求仅在所述共享文件的写入状态为空闲时发起,所述写入数据请求包括所述客户端查询到的版本号。
写入数据请求,用于请求向服务器上的共享文件写入数据,由于向共享文件写入数据,会使共享文件的写入状态由空闲转为忙碌,因此写入数据请求的作用相当于请求修改共享文件的写入状态。在本发明实施例中,客户端仅能在写入状态为空闲,即没有其他客户端向共享文件写入数据时,才可以向客户端发起写入数据请求,避免同时写入的逻辑错误。
具体地,根据写入状态判断是否可以发起写入数据请求可以由服务器执行,也可以由客户端执行。例如:服务器收到查询请求后,如果写入状态为空闲,则反馈写入状态,并发送允许客户端发起写入数据请求的消息;如果写入状态为忙碌则反馈写入状态并禁止所述客户端发起写入数据请求。或者,服务器收到查询请求后,仅向客户端发送版本号并反馈所述共享文件的写入状态,客户端仅在写入状态为空闲时发起写入数据请求。
步骤140、如果所述写入数据请求所包括的版本号与本服务器记录的当前的版本号相同,则修改所述版本号,允许所述客户端向所述共享文件写入数据,将所述共享文件的写入状态记录为忙碌。
步骤150、如果所述写入数据请求所包含的版本号与本服务器记录的当前的版本号不相同,则禁止所述客户端向所述共享文件写入数据。
服务器会对写入数据请求所包括的版本号进行核对,如果跟服务器记录的当前的版本号相同,则修改版本号并修改写入状态。因此,多个客户端在接近的时间向服务器发起写入数据请求,写入状态被修改为忙碌的同时版本号也发生变化,从而导致只有一个客户端能修改写入状态并被允许写入数据,其他客户端都将因为版本号发生变化而被禁止写入数据。
下面将示例性地,结合多个客户端与服务器的交互,进一步说明本实施例提供的方法的工作原理。
参见图2,图2是本发明实施例一中的共享文件的管理方法的时序示意图。该时序示意图用于说明本实施例提供的方法的实现原理,部分细节方案仅为示例。在各客户端开始执行请求写入数据的一系列操作之前,服务器先执行步骤D1:初始化程序,其中,版本号可以初始化为0,写入状态初始化为空闲。客户端A和客户端B分别执行步骤A1和B1,向服务器发起查询请求,服务器针对客户端A和客户端B分别发起的查询请求,分别执行步骤D2和D3,发送版本号0和反馈写入状态为空闲。客户端A和客户端B查询到写入状态为空闲后,各自执行步骤A2和B2,向服务器发起写入数据请求,并在写入数据请求中携带本客户端查询到的版本号。服务器对接收到的写入数据请求分别进行处理,包括步骤D4至D7:核对客户端B的版本号与记录的当前版本号相同,则修改版本号,例如修改为1,并记录写入状态为忙碌;允许客户端B写入;当核对客户端A的版本号时,由于版本号已被修改为1,因此客户端A的版本号与当前的版本号不同,禁止客户端A写入。此后客户端C执行步骤C1,再发起查询请求时,由于写入状态为忙碌,服务器执行步骤D8,可以拒绝客户端C发起写入数据请求。
由于客户端在发起查询请求后,可能会反馈给用户确认是否发起写入数据的请求,因此,从查询请求发起到客户端修改写入状态之间的时长较为不稳定,导致现有技术中出现了在客户端查询后到修改写入状态之间,其他客户端先进入了向共享文件写入数据的步骤,而先查询的客户端也会因为查询到写入状态为空闲而进入写入数据的步骤。而本实施例提供的方法,即便有多个客户端在共享文件的写入状态转为忙碌之前查询共享文件的写入状态,并在该写入状态转为忙碌之前或之后发起写入数据请求,由于版本号在修改写入状态的同时进行了修改,因此能够实现限定多个客户端向共享文件写入文件是依次执行而不是同时执行的。
优选地,所述共享文件的写入状态由编码数据表示;所述写入状态为空闲时,所述编码数据为空值;所述将所述共享文件的写入状态记录为忙碌,具体为:将所述编码数据修改为当前写入数据的所述客户端的标识符。
优选地,所述修改所述版本号,具体为:基于预设的增量,增加所述版本号的值。
优选地,所述共享文件的管理方法还包括:
在所述客户端结束写入数据时,将所述共享文件的写入状态记录为空闲。
综上所述,本实施例的技术方案,在客户端查询到共享文件的写入状态为空闲后发起写入数据请求时,服务器需要核对客户端在查询写入状态时所查询到的版本号,仅在该版本号与服务器当前记录的版本号一致时允许客户端写入数据并修改版本号,则如果在一个客户端查询写入状态到服务器响应该客户端的写入数据请求期间有其他客户端查询了写入状态并且成功变更了写入状态,则服务器在响应该客户端发起的写入数据请求时,版本号已被其他客户端的写入数据请求触发修改了,该客户端会因为版本号与服务器当前记录的不一致而被禁止向共享文件写入数据。从而解决了现有技术多个客户端同时向共享文件写入数据引发逻辑错误的技术问题,确保了多个客户端向共享文件写入数据的操作是依次进行的。
实施例二
图3是本发明实施例二提供的共享文件的管理方法的流程图,本实施例可适用于服务器对其存储的共享文件进行管理的情况,该方法可以由共享文件的管理装置来执行,该装置集成于服务器中。本实施例是在上一实施例的基础上,重点阐述优选实施方式的实现细节以及有益效果。
本实施例提供的共享文件的管理方法包括:
步骤310、接收客户端发起的查询请求;
其中,所述查询请求用于请求查询本服务器上的共享文件当前的版本号,以及查询本服务器上的共享文件的写入状态。所述共享文件的写入状态由编码数据表示;所述写入状态为空闲时,所述编码数据为空值。
步骤320、向所述客户端发送所述版本号,并反馈编码数据为空值,表示共享文件的写入状态为空闲。
步骤330、接收客户端发起的写入数据请求;
其中,所述写入数据请求仅在所述共享文件的写入状态为空闲时发起,所述写入数据请求包括所述客户端查询到的版本号。
步骤340、如果所述写入数据请求所包括的版本号与本服务器记录的当前的版本号相同,则基于预设的增量,增加所述版本号的值,允许所述客户端向所述共享文件写入数据,将所述编码数据修改为当前写入数据的所述客户端的标识符。
步骤350、如果所述写入数据请求所包含的版本号与本服务器记录的当前的版本号不相同,则禁止所述客户端向所述共享文件写入数据。
步骤360、在所述客户端结束写入数据时,将所述编码数据修改为空值。
作为其中一个优选实施方式,本实施例中共享文件的写入状态由编码数据表示,写入状态为忙碌时,编码数据为当前写入数据的客户端的标识符。标识符,是指用来标识客户端的一个代码,相当于客户端的身份标识号(ID)。使用客户端的标识符来表示共享文件的写入状态,有助于服务器记录共享文件的写入情况,使得服务器可以为用户提供更多的服务,例如撤销写入操作或者查询写入历史等。
作为其中一个优选实施方式,本实施例中,修改版本号的方式是基于预设的增量,增加所述版本号的值,例如,对版本号进行加1。递增的方法使得即便同一时段内访问共享文件的客户端数量众多,版本号变更频繁,也不会出现重复的版本号,避免了客户端在查询后,版本号修改多次后出现重复使得该客户端能够与其他客户端同时进入写入数据的情况。
作为其中一个优选实施方式,本实施例中,共享文件的管理方法还包括步骤360、在所述客户端结束写入数据时,将所述编码数据修改为空值。将编码数据修改为空值,可使其他客户端可以发起写入数据请求。
在上述技术方案的基础上,所述共享文件的管理方法还可以包括:在禁止所述客户端向所述共享文件写入数据之后的预设时间,向所述客户端发送当前的版本号,以及反馈共享文件的写入状态。该步骤使得客户端被禁止向共享文件写入数据后,能够自动重新读取版本号和共享文件的写入状态,从而再次发起写入数据请求。该步骤可以是由服务器进行计时,在计时时间到达预设时间时,自动返回版本号和写入状态,也可以是由客户端进行计时,自动重新发起查询请求使得服务器在该时间进行反馈。
综上所述,本实施例的技术方案,不仅解决了现有技术多个客户端同时向共享文件写入数据引发逻辑错误的技术问题,确保了多个客户端向共享文件写入数据的操作是依次进行的,还使得服务器可以为用户提供更多的服务;避免了客户端在查询后,版本号修改多次后出现重复使得该客户端能够与其他客户端同时进入写入数据的情况。
实施例三
图4是本发明实施例三提供的共享文件的管理装置的结构示意图。该共享文件的管理装置包括:
第一接收模块410,用于接收客户端发起的查询请求;其中,所述查询请求用于请求查询本服务器上的共享文件当前的版本号,以及查询本服务器上的共享文件的写入状态;
响应模块420,用于向所述客户端发送所述版本号,并反馈所述共享文件的写入状态;
第二接收模块430,用于接收客户端发起的写入数据请求;其中,所述写入数据请求仅在所述共享文件的写入状态为空闲时发起,所述写入数据请求包括所述客户端查询到的版本号;
允许写入模块440,用于如果所述写入数据请求所包括的版本号与本服务器记录的当前的版本号相同,则修改所述版本号,允许所述客户端向所述共享文件写入数据,将所述共享文件的写入状态记录为忙碌;
禁止写入模块450,用于如果所述写入数据请求所包含的版本号与本服务器记录的当前的版本号不相同,则禁止所述客户端向所述共享文件写入数据。
可选的,所述共享文件的写入状态由编码数据表示;所述写入状态为空闲时,所述编码数据为空值;所述允许写入模块将所述共享文件的写入状态记录为忙碌,具体为:所述允许写入模块将所述编码数据修改为当前写入数据的所述客户端的标识符。
可选的,所述允许写入模块修改所述版本号,具体为:所述允许写入模块基于预设的增量,增加所述版本号的值。
可选的,所述共享文件的管理装置还包括:
记录模块,用于在所述客户端结束写入数据时,将所述共享文件的写入状态记录为空闲。
本发明实施例所提供的共享文件的管理装置可执行本发明任意实施例所提供的共享文件的管理方法,具备执行方法相应的功能模块和有益效果。
实施例四
图5为本发明实施例四提供的一种服务器的结构示意图,该服务器用于存储共享文件。如图5所示,该服务器包括处理器510、存储器520、输入装置530和输出装置540;服务器中处理器510的数量可以是一个或多个,图5中以一个处理器510为例;服务器中的处理器510、存储器520、输入装置530和输出装置540可以通过总线或其他方式连接,图5中以通过总线连接为例。
存储器520作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的共享文件的管理方法对应的程序指令/模块(例如,共享文件的管理方法中的第一接收模块410、响应模块420、第二接收模块430、允许写入模块440和禁止写入模块450)。处理器510通过运行存储在存储器520中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述的共享文件的管理方法。
存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器520可进一步包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置530可用于接收输入的数字或字符信息,以及产生与服务器的用户设置以及功能控制有关的键信号输入。输出装置540可包括显示屏等显示设备。
实施例五
本发明实施例五还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于实现一种共享文件的管理方法,该方法包括:
接收客户端发起的查询请求;其中,所述查询请求用于请求查询本服务器上的共享文件当前的版本号,以及查询本服务器上的共享文件的写入状态;
向所述客户端发送所述版本号,并反馈所述共享文件的写入状态;
接收客户端发起的写入数据请求;其中,所述写入数据请求仅在所述共享文件的写入状态为空闲时发起,所述写入数据请求包括所述客户端查询到的版本号;
如果所述写入数据请求所包括的版本号与本服务器记录的当前的版本号相同,则修改所述版本号,允许所述客户端向所述共享文件写入数据,将所述共享文件的写入状态记录为忙碌;
如果所述写入数据请求所包含的版本号与本服务器记录的当前的版本号不相同,则禁止所述客户端向所述共享文件写入数据。当然,本发明实施例所提供的一种计算机可读存储介质,其计算机程序不限于实现如上所述的方法操作,还可以实现本发明任意实施例所提供的共享文件的管理方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种共享文件的管理方法,其特征在于,包括:
接收客户端发起的查询请求;其中,所述查询请求用于请求查询本服务器上的共享文件当前的版本号,以及查询本服务器上的共享文件的写入状态;
向所述客户端发送所述版本号,并反馈所述共享文件的写入状态;
接收客户端发起的写入数据请求;其中,所述写入数据请求仅在所述共享文件的写入状态为空闲时发起,所述写入数据请求包括所述客户端查询到的版本号;
如果所述写入数据请求所包括的版本号与本服务器记录的当前的版本号相同,则修改所述版本号,允许所述客户端向所述共享文件写入数据,将所述共享文件的写入状态记录为忙碌;
如果所述写入数据请求所包含的版本号与本服务器记录的当前的版本号不相同,则禁止所述客户端向所述共享文件写入数据。
2.根据权利要求1所述的共享文件的管理方法,其特征在于,所述共享文件的写入状态由编码数据表示;所述写入状态为空闲时,所述编码数据为空值;所述将所述共享文件的写入状态记录为忙碌,具体为:将所述编码数据修改为当前写入数据的所述客户端的标识符。
3.根据权利要求1所述的共享文件的管理方法,其特征在于,所述修改所述版本号,具体为:基于预设的增量,增加所述版本号的值。
4.根据权利要求1至3任一项所述的共享文件的管理方法,其特征在于,所述共享文件的管理方法还包括:
在所述客户端结束写入数据时,将所述共享文件的写入状态记录为空闲。
5.一种共享文件的管理装置,其特征在于,包括:
第一接收模块,用于接收客户端发起的查询请求;其中,所述查询请求用于请求查询本服务器上的共享文件当前的版本号,以及查询本服务器上的共享文件的写入状态;
响应模块,用于向所述客户端发送所述版本号,并反馈所述共享文件的写入状态;
第二接收模块,用于接收客户端发起的写入数据请求;其中,所述写入数据请求仅在所述共享文件的写入状态为空闲时发起,所述写入数据请求包括所述客户端查询到的版本号;
允许写入模块,用于如果所述写入数据请求所包括的版本号与本服务器记录的当前的版本号相同,则修改所述版本号,允许所述客户端向所述共享文件写入数据,将所述共享文件的写入状态记录为忙碌;
禁止写入模块,用于如果所述写入数据请求所包含的版本号与本服务器记录的当前的版本号不相同,则禁止所述客户端向所述共享文件写入数据。
6.根据权利要求5所述的共享文件的管理装置,其特征在于,所述共享文件的写入状态由编码数据表示;所述写入状态为空闲时,所述编码数据为空值;所述允许写入模块将所述共享文件的写入状态记录为忙碌,具体为:所述允许写入模块将所述编码数据修改为当前写入数据的所述客户端的标识符。
7.根据权利要求5所述的共享文件的管理装置,其特征在于,所述允许写入模块修改所述版本号,具体为:所述允许写入模块基于预设的增量,增加所述版本号的值。
8.根据权利要求5所述的共享文件的管理装置,其特征在于,所述共享文件的管理装置还包括:
记录模块,用于在所述客户端结束写入数据时,将所述共享文件的写入状态记录为空闲。
9.一种服务器,其特征在于,所述服务器用于存储共享文件,所述服务器包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的共享文件的管理方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的共享文件的管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810322050.XA CN108512930B (zh) | 2018-04-11 | 2018-04-11 | 一种共享文件的管理方法、装置、服务器和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810322050.XA CN108512930B (zh) | 2018-04-11 | 2018-04-11 | 一种共享文件的管理方法、装置、服务器和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108512930A CN108512930A (zh) | 2018-09-07 |
CN108512930B true CN108512930B (zh) | 2021-02-09 |
Family
ID=63381592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810322050.XA Active CN108512930B (zh) | 2018-04-11 | 2018-04-11 | 一种共享文件的管理方法、装置、服务器和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108512930B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111404959A (zh) * | 2020-03-26 | 2020-07-10 | 中车青岛四方车辆研究所有限公司 | 一种实现传输非实时离线文件的方法及系统 |
CN111858766A (zh) * | 2020-07-24 | 2020-10-30 | 苏州浪潮智能科技有限公司 | 一种文件复制方法、装置及可读存储介质 |
CN112232768A (zh) * | 2020-10-16 | 2021-01-15 | 广州助蜂网络科技有限公司 | 一种基于全生命周期管理的商户数据处理方法 |
CN112837043B (zh) * | 2021-03-04 | 2023-07-18 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102810092A (zh) * | 2011-05-31 | 2012-12-05 | 腾讯科技(深圳)有限公司 | 数据读写方法及系统 |
US8688666B1 (en) * | 2010-08-27 | 2014-04-01 | Amazon Technologies, Inc. | Multi-blob consistency for atomic data transactions |
CN103747080A (zh) * | 2013-12-31 | 2014-04-23 | 广州亦云信息技术有限公司 | 一种文件上传方法及系统 |
CN105653632A (zh) * | 2015-12-25 | 2016-06-08 | 北京奇虎科技有限公司 | 一种防止数据库并发的方法和装置 |
CN106549983A (zh) * | 2015-09-16 | 2017-03-29 | 中国移动通信集团公司 | 一种数据库的访问方法及终端、服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8321389B2 (en) * | 2009-01-08 | 2012-11-27 | International Business Machines Corporation | Method, apparatus and computer program product for maintaining file system client directory caches with parallel directory writes |
-
2018
- 2018-04-11 CN CN201810322050.XA patent/CN108512930B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8688666B1 (en) * | 2010-08-27 | 2014-04-01 | Amazon Technologies, Inc. | Multi-blob consistency for atomic data transactions |
CN102810092A (zh) * | 2011-05-31 | 2012-12-05 | 腾讯科技(深圳)有限公司 | 数据读写方法及系统 |
CN103747080A (zh) * | 2013-12-31 | 2014-04-23 | 广州亦云信息技术有限公司 | 一种文件上传方法及系统 |
CN106549983A (zh) * | 2015-09-16 | 2017-03-29 | 中国移动通信集团公司 | 一种数据库的访问方法及终端、服务器 |
CN105653632A (zh) * | 2015-12-25 | 2016-06-08 | 北京奇虎科技有限公司 | 一种防止数据库并发的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108512930A (zh) | 2018-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108512930B (zh) | 一种共享文件的管理方法、装置、服务器和存储介质 | |
CN110188110B (zh) | 一种构建分布式锁的方法及装置 | |
US20080313502A1 (en) | Systems, methods and computer products for trace capability per work unit | |
CN110413650B (zh) | 一种业务数据的处理方法、装置、设备和存储介质 | |
CN110008041B (zh) | 一种消息处理方法及装置 | |
CN112632375B (zh) | 会话信息处理方法、服务器及存储介质 | |
CN109933609B (zh) | 一种批量生成id的方法及终端 | |
CN110795171B (zh) | 业务数据处理方法、装置、计算机设备及存储介质 | |
WO2020216077A1 (zh) | 一种区块链事件去重方法、装置、计算机设备及存储介质 | |
CN106776795B (zh) | 基于Hbase数据库的数据写入方法及装置 | |
US20230030856A1 (en) | Distributed table storage processing method, device and system | |
WO2019094499A1 (en) | System and method for committing and rolling back database requests | |
CN115470156A (zh) | 基于rdma的内存使用方法、系统、电子设备和存储介质 | |
CN109697112B (zh) | 分布式集约化一站式作业系统和实现方法 | |
CN107181773A (zh) | 分布式存储系统的数据存储及数据管理方法、设备 | |
CN111382206A (zh) | 一种数据存储方法及装置 | |
US11853229B2 (en) | Method and apparatus for updating cached information, device, and medium | |
CN107276998B (zh) | 一种基于OpenSSL的性能优化方法及装置 | |
CN113282580A (zh) | 用于执行定时任务的方法、存储介质及服务器 | |
CN111858020B (zh) | 用户资源限制方法、装置及计算机存储介质 | |
WO2020253044A1 (zh) | 服务配置方法、装置、计算机设备及存储介质 | |
CN111294377B (zh) | 一种依赖关系的网络请求发送方法、终端装置及存储介质 | |
CN110543465A (zh) | 目录操作方法、装置、计算机设备和存储介质 | |
CN110597827A (zh) | 一种接口控制文件数据的存储方法及系统 | |
CN115858668A (zh) | 分布式事务处理方法、装置、电子装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |