一种多客户端同步处理文件的方法、服务端及系统与流程

文档序号:13010688阅读:290来源:国知局
一种多客户端同步处理文件的方法、服务端及系统与流程

本发明涉及通信领域,特别是涉及一种多客户端同步处理文件的方法、服务端及系统。



背景技术:

在当今时代,客户机/服务器(client/server,简称cs)模式仍是应用最为普遍的网络架构,它把客户端与服务器区分开来。每一个客户端软件的实例都可以向一个服务器或应用程序服务器发出请求。这个请求可以是向服务器上传一个文件。但是当多个客户端同时向服务器上传或者编辑同一个文件,这样写入内容必然产生冲突,最终导致文件内容异常。

目前传统的解决方法是通过设定使服务端在同一时刻只能响应一个客户端对同一个文件的操作请求,其他客户端需要等待,这样将致使用户体验不佳,出现系统“卡顿”的现象。

因此,如何解决在cs模式下,多客户端同时上传或者编辑同一文件导致数据内容错乱的问题,是本领域技术人员亟待解决的技术问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种多客户端同步处理文件的方法、服务端及系统,可以有效避免同时上传或编辑文件目录下文件导致的文件内容错乱的问题。其具体方案如下:

一种多客户端同步处理文件的方法,包括:

创建临时目录;所述临时目录用于存放处于上传状态或编辑状态的文件;

在接收到多客户端发送的上传文件或编辑文件的操作请求时,为每个所述操作请求生成一个临时id号;

在所述临时目录中进行文件的上传或编辑,并在所述文件的原有文件名的基础上添加对应的所述临时id号来命名所述文件;

上传或编辑完成后,将所述文件从所述临时目录移动到文件目录。

优选地,在本发明实施例提供的上述多客户端同步处理文件的方法中,在所述临时目录中进行文件的上传,并在所述文件的原有文件名的基础上添加对应的所述临时id号来命名所述文件,具体包括:

在所述临时目录下直接创建一个空文件;

将所述空文件用在待上传的文件的原有文件名的基础上添加对应的所述临时id号来命名;

在命名后的所述空文件中进行所述文件的上传。

优选地,在本发明实施例提供的上述多客户端同步处理文件的方法中,在所述临时目录中进行文件的编辑,并在所述文件的原有文件名的基础上添加对应的所述临时id号来命名所述文件,具体包括:

把文件目录下待编辑的文件复制到所述临时目录下;

将复制后的文件用在所述文件的原有文件名的基础上添加对应的所述临时id号来命名;

在命名后的所述文件中进行所述文件的编辑。

优选地,在本发明实施例提供的上述多客户端同步处理文件的方法中,将所述文件从所述临时目录移动到文件目录,具体包括:

根据所述文件的原有文件名与文件目录,把所述文件的现有文件名中去除所述临时id号,恢复所述原有文件名;

将所述文件移动到所述文件目录下,覆盖原来的同名文件。

优选地,在本发明实施例提供的上述多客户端同步处理文件的方法中,所述临时id号为一组11位的由随机字母数字构成的字符串。

本发明实施例还提供了一种服务端,包括:

临时目录创建模块,用于创建临时目录;所述临时目录用于存放处于上传状态或编辑状态的文件;

临时id号生成模块,用于在接收到多客户端发送的上传文件或编辑文件的操作请求时,为每个所述操作请求生成一个临时id号;

文件命名模块,用于在所述临时目录中进行文件的上传或编辑,并在所述文件的原有文件名的基础上添加对应的所述临时id号来命名所述文件;

文件移动模块,用于上传或编辑完成后,将所述文件从所述临时目录移动到文件目录。

优选地,在本发明实施例提供的上述服务端中,所述文件命名模块,具体用于在所述临时目录下直接创建一个空文件;将所述空文件用在待上传的文件的原有文件名的基础上添加对应的所述临时id号来命名;在命名后的所述空文件中进行所述文件的上传。

优选地,在本发明实施例提供的上述服务端中,所述文件命名模块,具体用于把文件目录下待编辑的文件复制到所述临时目录下;将复制后的文件用在所述文件的原有文件名的基础上添加对应的所述临时id号来命名;在命名后的所述文件中进行所述文件的编辑。

优选地,在本发明实施例提供的上述服务端中,所述文件移动模块,具体用于根据所述文件的原有文件名与文件目录,把所述文件的现有文件名中去除所述临时id号,恢复所述原有文件名;将所述文件移动到所述文件目录下,覆盖原来的同名文件。

本发明实施例还提供了一种多客户端同步处理文件的系统,包括:如本发明实施例提供的上述服务端以及多客户端。

本发明所提供的一种多客户端同步处理文件的方法、服务端及系统,包括:创建临时目录;临时目录用于存放处于上传状态或编辑状态的文件;在接收到多客户端发送的上传文件或编辑文件的操作请求时,为每个操作请求生成一个临时id号;在临时目录中进行文件的上传或编辑,并在文件的原有文件名的基础上添加对应的临时id号来命名文件;上传或编辑完成后,将文件从临时目录移动到文件目录。这样创建临时目录,带有临时id号的文件命名方式,可以使多客户端同时在线编辑、上传同名文件,而不会产生冲突,避免同时写入文件出错,且存入最新文件,改善传统解决方法中用户等待的问题,提高存储产品的竞争力。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的多客户端同步处理文件的方法的流程图;

图2为本发明实施例提供的多客户端同步处理文件的方法的逻辑示意图;

图3为本发明实施例提供的服务端的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供一种多客户端同步处理文件的方法,如图1所示,包括以下步骤:

s101、创建临时目录;临时目录用于存放处于上传状态或编辑状态的文件;

s102、在接收到多客户端发送的上传文件或编辑文件的操作请求时,为每个操作请求生成一个临时id号;

s103、在临时目录中进行文件的上传或编辑,并在文件的原有文件名的基础上添加对应的临时id号来命名文件;

s104、上传或编辑完成后,将文件从临时目录移动到文件目录。

在本发明实施例提供的上述多客户端同步处理文件的方法中,如图2所示,首先创建临时目录(图2中示出了服务端中的临时目录);临时目录用于存放处于上传状态或编辑状态的文件;然后在接收到多客户端发送的上传文件或编辑文件的操作请求(即上传操作或编辑操作)时,为每个操作请求生成一个临时id号(记为uploadid);之后在临时目录中进行文件的上传或编辑,并在文件的原有文件名的基础上添加对应的临时id号(记为uploadid+原有文件名)来命名文件;最后上传或编辑完成后,将文件从临时目录移动到文件目录(图2中示出了服务端中的文件目录)。这样创建临时目录,带有临时id号的文件命名方式,可以使多客户端同时在线编辑、上传同名文件,而不会产生冲突,避免同时写入文件出错,且存入最新文件,改善传统解决方法中用户等待的问题,提高存储产品的竞争力。

需要说明的是,在文件的原有文件名的基础上添加对应的临时id号(记为uploadid+原有文件名)来命名文件,这样命名的意义在于,通过文件目录下文件名来标识这些都是同名文件,编辑或上传完成后要移动到相同的文件目录下,通过uploadid来区分不同的操作请求,这样就可以保证每个请求在上传或者编辑文件时,在临时目录下操作的文件与其他请求绝不相同。

进一步地,在具体实施时,在本发明实施例提供的上述多客户端同步处理文件的方法中,步骤s103在临时目录中进行文件的上传(即上传操作),并在文件的原有文件名的基础上添加对应的临时id号来命名文件,具体可以包括:

首先,在临时目录下直接创建一个空文件;

然后,将空文件用在待上传的文件的原有文件名的基础上添加对应的临时id号来命名;

最后,在命名后的空文件中进行文件的上传。

另外,在具体实施时,在本发明实施例提供的上述多客户端同步处理文件的方法中,步骤s103在临时目录中进行文件的编辑(即编辑操作),并在文件的原有文件名的基础上添加对应的临时id号来命名文件,具体可以包括:

首先,把文件目录下待编辑的文件复制到临时目录下;

然后,将复制后的文件用在文件的原有文件名的基础上添加对应的临时id号来命名;

最后,在命名后的文件中进行文件的编辑。

具体地,如图2所示,先复制原文件到临时目录下,重新命名后,再进行编辑。

在具体实施时,在本发明实施例提供的上述多客户端同步处理文件的方法中,步骤s104将文件从临时目录移动到文件目录,具体可以包括:

首先,根据文件的原有文件名与文件目录,把文件的现有文件名中去除临时id号,恢复原有文件名;

然后,将文件移动到文件目录下,覆盖原来的同名文件。

具体地,如图2所示,在临时目录下文件的命名记为uploadidn+原有文件名,n为文件的序号,在转移到文件目录后,文件的命名恢复为原有文件名。

在具体实施时,在本发明实施例提供的上述多客户端同步处理文件的方法中,临时id号可以设置为一组11位的由随机字母数字构成的字符串,具体地,可以由服务端文件系统生成。

基于同一发明构思,本发明实施例还提供了一种服务端,由于该服务端解决问题的原理与前述一种多客户端同步处理文件的方法相似,因此该服务端的实施可以参见多客户端同步处理文件的方法的实施,重复之处不再赘述。

在具体实施时,本发明实施例提供的服务端,如图3所示,具体可以包括:

临时目录创建模块1,用于创建临时目录;临时目录用于存放处于上传状态或编辑状态的文件;

临时id号生成模块2,用于在接收到多客户端发送的上传文件或编辑文件的操作请求时,为每个操作请求生成一个临时id号;

文件命名模块3,用于在临时目录中进行文件的上传或编辑,并在文件的原有文件名的基础上添加对应的临时id号来命名文件;

文件移动模块4,用于上传或编辑完成后,将文件从临时目录移动到文件目录。

在本发明实施例提供的上述服务端中,通过上述四个模块的相互作者用,能够有效避免同时编辑文件目录下文件导致的文件内容错乱的问题,同时改善传统解决方法中用户等待的问题,实现了多客户端同时在线编辑、上传同一文件功能,这样不仅从逻辑上规避了同时编辑同一文件出现内容错乱的可能性,也极大的改善了用户体验。

进一步地,在具体实施时,在本发明实施例提供的上述服务端中,文件命名模块3,具体可以用于在临时目录下直接创建一个空文件;将空文件用在待上传的文件的原有文件名的基础上添加对应的临时id号来命名;在命名后的空文件中进行文件的上传。

另外,在具体实施时,在本发明实施例提供的上述服务端中,文件命名模块3,具体还可以用于把文件目录下待编辑的文件复制到临时目录下;将复制后的文件用在文件的原有文件名的基础上添加对应的临时id号来命名;在命名后的文件中进行文件的编辑。

在具体实施时,在本发明实施例提供的上述服务端中,文件移动模块4,具体可以用于根据文件的原有文件名与文件目录,把文件的现有文件名中去除临时id号,恢复原有文件名;将文件移动到文件目录下,覆盖原来的同名文件。

基于同一发明构思,本发明实施例还提供了一种多客户端同步处理文件的系统,包括:本发明实施例提供的上述服务端以及多客户端。由于该服务端的实施可以参见多客户端同步处理文件的方法的实施,本发明实施例提供的多客户端同步处理文件的系统也可以参见多客户端同步处理文件的方法的实施,重复之处不再赘述。

本发明实施例提供的一种多客户端同步处理文件的方法、服务端及系统,包括:创建临时目录;临时目录用于存放处于上传状态或编辑状态的文件;在接收到多客户端发送的上传文件或编辑文件的操作请求时,为每个操作请求生成一个临时id号;在临时目录中进行文件的上传或编辑,并在文件的原有文件名的基础上添加对应的临时id号来命名文件;上传或编辑完成后,将文件从临时目录移动到文件目录。这样创建临时目录,带有临时id号的文件命名方式,可以使多客户端同时在线编辑、上传同名文件,而不会产生冲突,避免同时写入文件出错,且存入最新文件,改善传统解决方法中用户等待的问题,提高存储产品的竞争力。

最后,还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的多客户端同步处理文件的方法、服务端及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1