CN104239125B - 对象处理方法、分布式文件***及客户端设备 - Google Patents
对象处理方法、分布式文件***及客户端设备 Download PDFInfo
- Publication number
- CN104239125B CN104239125B CN201410508764.1A CN201410508764A CN104239125B CN 104239125 B CN104239125 B CN 104239125B CN 201410508764 A CN201410508764 A CN 201410508764A CN 104239125 B CN104239125 B CN 104239125B
- Authority
- CN
- China
- Prior art keywords
- information
- storage server
- server
- address
- identification information
- 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
Landscapes
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供的对象处理方法、分布式文件***及客户端设备,可以在每一个存储服务器中均安装一个虚拟机,由API服务器接收客户端发送的包含有处理参数信息的HTTP请求并从元数据服务器中获得存储有所要处理对象的存储服务器地址,将所要处理的对象的标识信息及处理参数信息发送到位于该地址的存储服务器中。由于每一个存储服务器中均安装有一个虚拟机,因此存储该对象的存储服务器上安装的虚拟机就可以根据处理参数信息直接对该存储服务器上的该对象进行处理,而不再需要进行对象下载,更加方便和快捷。因此本发明实现了对象的快速处理。同时,本发明还充分利用了存储服务器的计算能力,使得存储服务器的利用率提高。
Description
技术领域
本发明涉及分布式文件***技术领域,特别是涉及对象处理方法、分布式文件***及客户端设备。
背景技术
随着互联网的发展,互联网中的传播的对象也越来越多,如视频、图片等。现在,许多网站均通过分布式文件***对对象进行存储,将对象存储在分布式文件***的多个存储服务器中。同时,现有技术的分布式文件***采用基于HTTP协议的通信方式来与客户端设备进行通信。
当需要对对象进行处理时,客户端设备向分布式文件***发送携带有对象标识的HTTP请求。分布式文件***根据HTTP请求将存储服务器中的相应对象发送到客户端设备中。现有技术通过基于HTTP协议的通信方式进行通信便于对出现的问题进行定位,容易确定出现的问题是客户端设备的问题还是分布式文件***的问题。但此种通信方式在对所存储的对象进行处理时,就需要将对象从分布式文件***的存储服务器中下载所要处理的对象到客户端设备中。待对象下载完毕后,才能对对象进行处理。
由于对象下载将花费较多的时间,因此现有的对象处理方式无法实现对对象的快速处理。
发明内容
本发明实施例的目的在于提供一种对象处理方法、分布式文件***及客户端设备,以实现对象的快速处理。
为达到上述目的,本发明实施例公开了一种对象处理方法,应用于分布式文件***中,所述分布式文件***与客户端设备通信连接,所述分布式文件***中包括有元数据服务器、应用程序接口API服务器及多个存储有对象的存储服务器,每个所述存储服务器上均安装有一个虚拟机,所述方法包括:
所述API服务器接收客户端设备发送的超文本传输协议HTTP请求;
在所述HTTP请求的类型为对象处理请求时,所述API服务器将所述请求中的对象的标识信息发送到所述元数据服务器,其中,所述对象处理请求中携带有所要处理的对象的标识信息及处理参数信息;
所述API服务器接收所述元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息;
所述API服务器将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中;
安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理。
可选的,在所述API服务器将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中后,所述方法还包括:
具有所述地址信息的存储服务器根据所述标识信息确定具有所述标识信息的对象的存储路径;
具有所述地址信息的存储服务器将该存储服务器的互联网协议IP地址、所述存储路径和所述处理参数信息进行封装,生成待处理消息;
具有所述地址信息的存储服务器将所述待处理消息***消息队列中;
所述安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理,包括:
安装在具有所述地址信息的存储服务器中的虚拟机判断所述消息队列中的新***的待处理消息中的IP地址是否与该虚拟机所在的存储服务器的IP地址相同,如果是,则根据所述新***的待处理消息中的处理参数信息对存储在所述存储路径的对象进行处理。
可选的,还包括:
安装在具有所述地址信息的存储服务器中的虚拟机将对对象进行处理的处理结果发送到外部设备中。
可选的,所述在所述HTTP请求的类型为对象处理请求时,所述API服务器将所述请求中的对象的标识信息发送到所述元数据服务器,包括:
所述API服务器根据所述HTTP请求的请求头确定所述HTTP请求的类型;
在确定所述HTTP请求的类型为对象处理请求时,将所述请求中的对象的标识信息发送到所述元数据服务器。
可选的,在所述API服务器将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中后,所述方法还包括:
所述API服务器接收具有所述地址信息的存储服务器将所述待处理消息***消息队列中后返回的消息入列响应,并将所述消息入列响应返回给所述客户端设备。
一种对象处理方法,应用于客户端设备中,所述客户端设备与分布式文件***通信连接,所述分布式文件***中包括有元数据服务器、应用程序接口API服务器及多个存储有对象的存储服务器,每个所述存储服务器上均安装有一个虚拟机,所述方法包括:
所述客户端设备发送携带有所要处理的对象的标识信息及处理参数信息的超文本传输协议HTTP请求至所述API服务器,以使:
所述API服务器识别所述HTTP请求的类型为对象处理请求,将所述请求中的对象的标识信息发送到所述元数据服务器,接收所述元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息,将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中,进而使得安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理。
一种分布式文件***,所述分布式文件***与客户端设备通信连接,所述分布式文件***包括:元数据服务器、应用程序接口API服务器及多个存储有对象的存储服务器,每个所述存储服务器均包括运行虚拟机的虚拟机单元,所述API服务器包括:请求接收单元、标识发送单元、名称接收单元和信息发送单元,
所述请求接收单元,用于接收客户端设备发送的超文本传输协议HTTP请求;
所述标识发送单元,用于在所述HTTP请求的类型为对象处理请求时,将所述请求中的对象的标识信息发送到所述元数据服务器,其中,所述对象处理请求中携带有所要处理的对象的标识信息及处理参数信息;
所述名称接收单元,用于接收所述元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息;
所述信息发送单元,用于将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中;
具有所述地址信息的存储服务器中的虚拟机单元,用于根据所述处理参数信息对具有所述标识信息的对象进行处理。
可选的,所述存储服务器中还包括:路径确定单元、信息封装单元和消息***单元,
具有所述地址信息的存储服务器中的所述路径确定单元,用于在所述信息发送单元将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中后,根据所述标识信息确定具有所述标识信息的对象的存储路径;
具有所述地址信息的存储服务器中的所述信息封装单元,用于将该具有所述地址信息的存储服务器的互联网协议IP地址、所述存储路径和所述处理参数信息进行封装,生成待处理消息;
具有所述地址信息的存储服务器中的所述消息***单元,用于将所述待处理消息***消息队列中;
具有所述地址信息的存储服务器中的所述虚拟机单元,包括:IP地址判断子单元和对象处理子单元,
所述IP地址判断子单元,用于判断所述消息队列中的新***的待处理消息中的IP地址是否与该虚拟机单元所在的存储服务器的IP地址相同,如果是,则触发所述对象处理子单元;
所述对象处理子单元,用于根据所述新***的待处理消息中的处理参数信息对存储在所述存储路径的对象进行处理。
可选的,具有所述地址信息的存储服务器中的所述虚拟机单元,还包括:结果返回单元,用于将对对象进行处理的处理结果发送到外部设备中。
可选的,所述标识发送单元,包括:请求类型确定子单元和标识发送子单元,
所述请求类型确定子单元,用于根据所述HTTP请求的请求头确定所述HTTP请求的类型;
所述标识发送子单元,用于在所述请求类型确定子单元确定所述HTTP请求的类型为对象处理请求时,将所述请求中的对象的标识信息发送到所述元数据服务器。
可选的,所述API服务器还包括:响应传递单元,用于在所述信息发送单元将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中后,接收具有所述地址信息的存储服务器将所述待处理消息***消息队列中后返回的消息入列响应,并将所述消息入列响应返回给所述客户端设备。
一种客户端设备,所述客户端设备与分布式文件***通信连接,所述分布式文件***中包括有元数据服务器、应用程序接口API服务器及多个存储有对象的存储服务器,每个所述存储服务器上均安装有一个虚拟机,所述客户端设备包括:请求发送单元,用于发送携带有所要处理的对象的标识信息及处理参数信息的超文本传输协议HTTP请求至所述API服务器,以使:
所述API服务器识别所述HTTP请求的类型为对象处理请求,将所述请求中的对象的标识信息发送到所述元数据服务器,接收所述元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息,将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中,进而使得安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理。
本发明实施例提供的对象处理方法、分布式文件***及客户端设备,可以在每一个存储服务器中均安装一个虚拟机,由API服务器接收客户端发送的包含有处理参数信息的HTTP请求并从元数据服务器中获得存储有所要处理对象的存储服务器地址,将所要处理的对象的标识信息及处理参数信息发送到位于该地址的存储服务器中。由于每一个存储服务器中均安装有一个虚拟机,因此存储该对象的存储服务器上安装的虚拟机就可以根据处理参数信息直接对该存储服务器上的该对象进行处理,而不再需要进行对象下载,更加方便和快捷。因此本发明实现了对象的快速处理。同时,本发明还充分利用了存储服务器的计算能力,使得存储服务器的利用率提高。
当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种对象处理方法的流程图;
图2为本发明实施例提供的另一种对象处理方法的流程图;
图3为本发明实施例提供的一种分布式文件***的结构示意图;
图4为本发明实施例提供的一种分布式文件***中API服务器的结构示意图;
图5为本发明实施例提供的一种分布式文件***中存储服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种对象处理方法,应用于分布式文件***中,所述分布式文件***与客户端设备通信连接,所述分布式文件***中包括有元数据服务器、应用程序接口API服务器及多个存储有对象的存储服务器,每个所述存储服务器上均安装有一个虚拟机,该方法可以包括:
S100、所述API服务器接收客户端设备发送的超文本传输协议HTTP请求;
API(Application Programming Interface,应用程序编程接口)是操作***留给应用程序的一个调用接口,应用程序通过调用操作***的API而使操作***去执行应用程序的命令。
HTTP请求是指从客户端到服务器端的请求消息,可以包括:对资源的请求方法、资源的标识符、资源使用协议和处理参数信息等。
其中,API服务器、元数据服务器、存储服务器可以位于相同或不同的物理设备中。
元数据服务器中可以保存有各种分布式文件***所需的元数据信息,如存储服务器地址信息、存储服务器存储的对象列表等。其中,元数据信息是用于描述数据的信息,是对数据及资源的描述性信息。可选的,本发明中的元数据服务器可以有多台。
S200、在所述HTTP请求的类型为对象处理请求时,所述API服务器将所述请求中的对象的标识信息发送到所述元数据服务器,其中,所述对象处理请求中携带有所要处理的对象的标识信息及处理参数信息;
其中,处理参数信息可以包括进行对象处理所需的各种处理参数,如:在需要对视频进行转码时,对象处理请求中的处理参数信息可以包括目标码率。具体的处理参数信息有各种形式,在实际应用中,可以根据需要选择合适的处理参数信息添加到HTTP请求中。本发明中的对象可以为视频、图片、音频、文本等。其中,对象处理请求中还可以携带有处理后对象的存储地址信息,以将处理后的对象发送到相应的存储地址进行存储。该存储地址可以为存储服务器中的存储地址,也可以为外部设备中的存储地址。
其中,S200可以包括:
所述API服务器根据所述HTTP请求的请求头确定所述HTTP请求的类型;
在确定所述HTTP请求的类型为对象处理请求时,将所述请求中的对象的标识信息发送到所述元数据服务器。
其中,请求头中可以包含有请求类型的标识,与对象处理请求对应的请求头中的标识可以根据需要设定和修改,如:设定X-QUICK-VIDEO-PROCESS是对象处理请求对应的请求类型的标识。这样,根据请求中的请求类型的标识就可以识别出是何种类型的请求。
S300、所述API服务器接收所述元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息;
可选的,当有至少两个存储服务器中存储有具有所述标识信息的对象时,元数据服务器返回的地址信息可以为存储有具有所述标识信息的对象的存储服务器的地址列表。可以理解的是,有些情况下,分布式文件***对某一对象会多次备份并存储备份。这样,该对象的安全性就大大提高,不宜丢失。
S400、所述API服务器将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中;
S500、安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理。
虚拟机(Virtual Machine)是通过软件模拟的具有完整硬件***功能的、运行在一个完全隔离环境中的完整计算机***。通过虚拟机,可以在逻辑上将虚拟机和硬件环境隔离,既可以实现虚拟机对任务的处理,又不会干扰虚拟机所在的硬件的原有布局。虚拟机和存储服务器可以通过bind-mount机制,保证虚拟机内和存储服务器内看到的对象存储文件目录路径保持一致,并且虚拟机能够获得其所在的存储服务器的配置信息,例如IP地址等。由于虚拟机技术是现有技术,方便起见,不再赘述。
进一步,存储服务器可以将进行处理后的对象进行存储或发送到外部设备中。如:安装在具有所述地址信息的存储服务器将处理后的对象存储在本存储服务器中,或者,安装在具有所述地址信息的存储服务器将处理后的对象发送到外部设备中进行存储。
当安装在具有所述地址信息的存储服务器将处理后的对象存储在本存储服务器中时,本发明相对于现有技术可以再减少一次传输过程。现有技术在将对象从某存储服务器下载到客户端设备进行处理后,还需要将处理后的对象再发送到该存储服务器进行存储,这就需要两次对象传输过程。而本发明的方案下,该存储服务器上的虚拟机对存储于该存储服务器的对象进行处理后,可以直接将其存储在该存储服务器中,无需进行对象传输,因此还提高了处理后对象的保存速度。
本发明实施例提供的一种对象处理方法,可以在每一个存储服务器中均安装一个虚拟机,由API服务器接收客户端发送的包含有处理参数信息的HTTP请求并从元数据服务器中获得存储有所要处理对象的存储服务器地址,将所要处理的对象的标识信息及处理参数信息发送到位于该地址的存储服务器中。由于每一个存储服务器中均安装有一个虚拟机,因此存储该对象的存储服务器上安装的虚拟机就可以根据处理参数信息直接对该存储服务器上的该对象进行处理,而不再需要进行对象下载,更加方便和快捷。因此本发明实现了对象的快速处理。同时,本发明还充分利用了存储服务器的计算能力,使得存储服务器的利用率提高。
如图2所示,本发明实施例提供的另一种对象处理方法中,在S400后,还可以包括:S410至S430,其中:
S410、具有所述地址信息的存储服务器根据所述标识信息确定具有所述标识信息的对象的存储路径;
S420、具有所述地址信息的存储服务器将该存储服务器的互联网协议IP地址、所述存储路径和所述处理参数信息进行封装,生成待处理消息;
S430、具有所述地址信息的存储服务器将所述待处理消息***消息队列中;
如图2所示,图1所示实施例中的S500可以包括:
S510、安装在具有所述地址信息的存储服务器中的虚拟机判断所述消息队列中的新***的待处理消息中的IP地址是否与该虚拟机所在的存储服务器的IP地址相同,如果是,则执行S520;
S520、安装在具有所述地址信息的存储服务器中的虚拟机根据所述新***的待处理消息中的处理参数信息对存储在所述存储路径的对象进行处理。
可以理解的是,通过消息队列的方式可以对各种任务进行统一管理。
在图1或图2所示实施例的基础上,本发明实施例提供的另一种对象处理方法,还可以包括:
安装在具有所述地址信息的存储服务器中的虚拟机将对对象进行处理的处理结果发送到外部设备中。
其中,外部设备可以为数据库设备等。将处理结果发送到外部设备,可以实现外部设备的监听或结果存储等功能。
在图1或图2所示实施例的基础上,本发明实施例提供的另一种对象处理方法,在S400后,还可以包括:
所述API服务器接收具有所述地址信息的存储服务器将所述待处理消息***消息队列中后返回的消息入列响应,并将所述消息入列响应返回给所述客户端设备。
通过消息入列响应就可以及时告知客户端设备其HTTP请求已被加入消息队列中等待处理,从而使得客户端设备知悉处理进度。当然,如果元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息为空,则API服务器可以将404消息返回给客户端设备。404消息代表的含义为未找到所请求的对象。
与上述方法实施例相对应,本发明还提供了一种分布式文件***。
本发明实施例提供的一种分布式文件***,与客户端设备010通信连接,如图3所示,该分布式文件***011可以包括:元数据服务器001、应用程序接口API服务器002及多个存储有对象的存储服务器003,每个所述存储服务器003均包括运行虚拟机的虚拟机单元,如图4所示,API服务器002可以包括:请求接收单元100、标识发送单元200、名称接收单元300和信息发送单元400,
所述请求接收单元100,用于接收客户端设备010发送的超文本传输协议HTTP请求;
所述标识发送单元200,用于在所述HTTP请求的类型为对象处理请求时,将所述请求中的对象的标识信息发送到所述元数据服务器001,其中,所述对象处理请求中携带有所要处理的对象的标识信息及处理参数信息;
其中,所述标识发送单元200,可以包括:请求类型确定子单元和标识发送子单元,
所述请求类型确定子单元,用于根据所述HTTP请求的请求头确定所述HTTP请求的类型;
所述标识发送子单元,用于在所述请求类型确定子单元确定所述HTTP请求的类型为对象处理请求时,将所述请求中的对象的标识信息发送到所述元数据服务器。
所述名称接收单元300,用于接收所述元数据服务器001返回的存储有具有所述标识信息的对象的存储服务器的地址信息;
所述信息发送单元400,用于将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中;
具有所述地址信息的存储服务器003中的虚拟机单元,用于根据所述处理参数信息对具有所述标识信息的对象进行处理。
本发明实施例提供的一种分布式文件***,可以在每一个存储服务器中均安装一个虚拟机,由API服务器接收客户端发送的包含有处理参数信息的HTTP请求并从元数据服务器中获得存储有所要处理对象的存储服务器地址,将所要处理的对象的标识信息及处理参数信息发送到位于该地址的存储服务器中。由于每一个存储服务器中均安装有一个虚拟机,因此存储该对象的存储服务器上安装的虚拟机就可以根据处理参数信息直接对该存储服务器上的该对象进行处理,而不再需要进行对象下载,更加方便和快捷。因此本发明实现了对象的快速处理。同时,本发明还充分利用了存储服务器的计算能力,使得存储服务器的利用率提高。
在本发明另一实施例中,API服务器002还可以包括:响应传递单元,用于在所述信息发送单元400将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中后,接收具有所述地址信息的存储服务器将所述待处理消息***消息队列中后返回的消息入列响应,并将所述消息入列响应返回给所述客户端设备010。
如图5所示,本发明实施例提供的另一种分布式文件***中,存储服务器003中除虚拟机单元004外,还可以包括:路径确定单元005、信息封装单元006和消息***单元007,
具有所述地址信息的存储服务器中的所述路径确定单元005,用于在所述信息发送单元将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中后,根据所述标识信息确定具有所述标识信息的对象的存储路径;
具有所述地址信息的存储服务器中的所述信息封装单元006,用于将该具有所述地址信息的存储服务器的互联网协议IP地址、所述存储路径和所述处理参数信息进行封装,生成待处理消息;
具有所述地址信息的存储服务器中的所述消息***单元007,用于将所述待处理消息***消息队列中;
具有所述地址信息的存储服务器中的所述虚拟机单元004,可以包括:IP地址判断子单元004a和对象处理子单元004b,
所述IP地址判断子单元004a,用于判断所述消息队列中的新***的待处理消息中的IP地址是否与该虚拟机单元所在的存储服务器的IP地址相同,如果是,则触发所述对象处理子单元004b;
所述对象处理子单元004b,用于根据所述新***的待处理消息中的处理参数信息对存储在所述存储路径的对象进行处理。
其中,具有所述地址信息的存储服务器中的所述虚拟机单元,还可以包括:结果返回单元,用于将对对象进行处理的处理结果发送到外部设备中。
本发明还提供了另一种对象处理方法,应用于客户端设备中,如图3所示,所述客户端设010与分布式文件***011通信连接,如图3所示,所述分布式文件***011中包括有元数据服务器001、应用程序接口API服务器002及多个存储有对象的存储服务器003,每个所述存储服务器003上均安装有一个虚拟机,该方法可以包括:
所述客户端设备010发送携带有所要处理的对象的标识信息及处理参数信息的超文本传输协议HTTP请求至所述API服务器002,以使:
所述API服务器002识别所述HTTP请求的类型为对象处理请求,将所述请求中的对象的标识信息发送到所述元数据服务器001,接收所述元数据服务器001返回的存储有具有所述标识信息的对象的存储服务器003的地址信息,将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器003中,进而使得安装在具有所述地址信息的存储服务器003中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理。
本发明实施例提供的一种对象处理方法,将处理参数信息添加到HTTP请求中,这样就使得存储所要处理对象的存储服务器上安装的虚拟机可以根据处理参数信息直接对该存储服务器上的该对象进行处理,而不再需要进行对象下载,更加方便和快捷。因此本发明实现了对象的快速处理。
相应的,如图3所示,本发明还提供了一种客户端设备010,所述客户端设备010与分布式文件***011通信连接,所述分布式文件***011中包括有元数据服务器001、应用程序接口API服务器002及多个存储有对象的存储服务器003,每个所述存储服务器003上均安装有一个虚拟机,所述客户端设备010包括:请求发送单元,用于发送携带有所要处理的对象的标识信息及处理参数信息的超文本传输协议HTTP请求至所述API服务器002,以使:
所述API服务器002识别所述HTTP请求的类型为对象处理请求,将所述请求中的对象的标识信息发送到所述元数据服务器001,接收所述元数据服务器001返回的存储有具有所述标识信息的对象的存储服务器003的地址信息,将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器003中,进而使得安装在具有所述地址信息的存储服务器003中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理。
本发明实施例提供的一种客户端设备,将处理参数信息添加到HTTP请求中,这样就使得存储所要处理对象的存储服务器上安装的虚拟机可以根据处理参数信息直接对该存储服务器上的该对象进行处理,而不再需要进行对象下载,更加方便和快捷。因此本发明实现了对象的快速处理。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种对象处理方法,其特征在于,应用于分布式文件***中,所述分布式文件***与客户端设备通信连接,所述分布式文件***中包括有元数据服务器、应用程序接口API服务器及多个存储有对象的存储服务器,每个所述存储服务器上均安装有一个虚拟机,所述方法包括:
所述API服务器接收客户端设备发送的超文本传输协议HTTP请求;
在所述HTTP请求的类型为对象处理请求时,所述API服务器将所述请求中的对象的标识信息发送到所述元数据服务器,其中,所述对象处理请求中携带有所要处理的对象的标识信息及处理参数信息;
所述API服务器接收所述元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息;
所述API服务器将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中;
具有所述地址信息的存储服务器根据所述标识信息确定具有所述标识信息的对象的存储路径;
具有所述地址信息的存储服务器将该存储服务器的互联网协议IP地址、所述存储路径和所述处理参数信息进行封装,生成待处理消息;
具有所述地址信息的存储服务器将所述待处理消息***消息队列中;
安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理;
所述安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理,包括:
安装在具有所述地址信息的存储服务器中的虚拟机判断所述消息队列中的新***的待处理消息中的IP地址是否与该虚拟机所在的存储服务器的IP地址相同,如果是,则根据所述新***的待处理消息中的处理参数信息对存储在所述存储路径的对象进行处理。
2.根据权利要求1所述的方法,其特征在于,还包括:
安装在具有所述地址信息的存储服务器中的虚拟机将对对象进行处理的处理结果发送到外部设备中。
3.根据权利要求1所述的方法,其特征在于,所述在所述HTTP请求的类型为对象处理请求时,所述API服务器将所述请求中的对象的标识信息发送到所述元数据服务器,包括:
所述API服务器根据所述HTTP请求的请求头确定所述HTTP请求的类型;
在确定所述HTTP请求的类型为对象处理请求时,将所述请求中的对象的标识信息发送到所述元数据服务器。
4.根据权利要求1所述的方法,其特征在于,在所述API服务器将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中后,所述方法还包括:
所述API服务器接收具有所述地址信息的存储服务器将所述待处理消息***消息队列中后返回的消息入列响应,并将所述消息入列响应返回给所述客户端设备。
5.一种对象处理方法,其特征在于,应用于客户端设备中,所述客户端设备与分布式文件***通信连接,所述分布式文件***中包括有元数据服务器、应用程序接口API服务器及多个存储有对象的存储服务器,每个所述存储服务器上均安装有一个虚拟机,所述方法包括:
所述客户端设备发送携带有所要处理的对象的标识信息及处理参数信息的超文本传输协议HTTP请求至所述API服务器,以使:
所述API服务器识别所述HTTP请求的类型为对象处理请求,将所述请求中的对象的标识信息发送到所述元数据服务器,接收所述元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息,将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中,具有所述地址信息的存储服务器根据所述标识信息确定具有所述标识信息的对象的存储路径;具有所述地址信息的存储服务器将该存储服务器的互联网协议IP地址、所述存储路径和所述处理参数信息进行封装,生成待处理消息;具有所述地址信息的存储服务器将所述待处理消息***消息队列中;进而使得安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理,所述进而使得安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理,包括:安装在具有所述地址信息的存储服务器中的虚拟机判断所述消息队列中的新***的待处理消息中的IP地址是否与该虚拟机所在的存储服务器的IP地址相同,如果是,则根据所述新***的待处理消息中的处理参数信息对存储在所述存储路径的对象进行处理。
6.一种分布式文件***,其特征在于,所述分布式文件***与客户端设备通信连接,所述分布式文件***包括:元数据服务器、应用程序接口API服务器及多个存储有对象的存储服务器,每个所述存储服务器均包括运行虚拟机的虚拟机单元,所述API服务器包括:请求接收单元、标识发送单元、名称接收单元和信息发送单元,
所述请求接收单元,用于接收客户端设备发送的超文本传输协议HTTP请求;
所述标识发送单元,用于在所述HTTP请求的类型为对象处理请求时,将所述请求中的对象的标识信息发送到所述元数据服务器,其中,所述对象处理请求中携带有所要处理的对象的标识信息及处理参数信息;
所述名称接收单元,用于接收所述元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息;
所述信息发送单元,用于将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中;
所述存储服务器中还包括:路径确定单元、信息封装单元和消息***单元,
具有所述地址信息的存储服务器中的所述路径确定单元,用于在所述信息发送单元将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中后,根据所述标识信息确定具有所述标识信息的对象的存储路径;
具有所述地址信息的存储服务器中的所述信息封装单元,用于将该具有所述地址信息的存储服务器的互联网协议IP地址、所述存储路径和所述处理参数信息进行封装,生成待处理消息;
具有所述地址信息的存储服务器中的所述消息***单元,用于将所述待处理消息***消息队列中;
具有所述地址信息的存储服务器中的虚拟机单元,用于根据所述处理参数信息对具有所述标识信息的对象进行处理,具有所述地址信息的存储服务器中的所述虚拟机单元,包括:IP地址判断子单元和对象处理子单元,
所述IP地址判断子单元,用于判断所述消息队列中的新***的待处理消息中的IP地址是否与该虚拟机单元所在的存储服务器的IP地址相同,如果是,则触发所述对象处理子单元;
所述对象处理子单元,用于根据所述新***的待处理消息中的处理参数信息对存储在所述存储路径的对象进行处理。
7.根据权利要求6所述的***,其特征在于,具有所述地址信息的存储服务器中的所述虚拟机单元,还包括:结果返回单元,用于将对对象进行处理的处理结果发送到外部设备中。
8.根据权利要求6所述的***,其特征在于,所述标识发送单元,包括:请求类型确定子单元和标识发送子单元,
所述请求类型确定子单元,用于根据所述HTTP请求的请求头确定所述HTTP请求的类型;
所述标识发送子单元,用于在所述请求类型确定子单元确定所述HTTP请求的类型为对象处理请求时,将所述请求中的对象的标识信息发送到所述元数据服务器。
9.根据权利要求6所述的***,其特征在于,所述API服务器还包括:响应传递单元,用于在所述信息发送单元将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中后,接收具有所述地址信息的存储服务器将所述待处理消息***消息队列中后返回的消息入列响应,并将所述消息入列响应返回给所述客户端设备。
10.一种客户端设备,其特征在于,所述客户端设备与分布式文件***通信连接,所述分布式文件***中包括有元数据服务器、应用程序接口API服务器及多个存储有对象的存储服务器,每个所述存储服务器上均安装有一个虚拟机,所述客户端设备包括:请求发送单元,用于发送携带有所要处理的对象的标识信息及处理参数信息的超文本传输协议HTTP请求至所述API服务器,以使:
所述API服务器识别所述HTTP请求的类型为对象处理请求,将所述请求中的对象的标识信息发送到所述元数据服务器,接收所述元数据服务器返回的存储有具有所述标识信息的对象的存储服务器的地址信息,将所述对象的标识信息及处理参数信息发送到具有所述地址信息的存储服务器中,具有所述地址信息的存储服务器根据所述标识信息确定具有所述标识信息的对象的存储路径;具有所述地址信息的存储服务器将该存储服务器的互联网协议IP地址、所述存储路径和所述处理参数信息进行封装,生成待处理消息;具有所述地址信息的存储服务器将所述待处理消息***消息队列中;进而使得安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理,所述进而使得安装在具有所述地址信息的存储服务器中的虚拟机根据所述处理参数信息对具有所述标识信息的对象进行处理包括:安装在具有所述地址信息的存储服务器中的虚拟机判断所述消息队列中的新***的待处理消息中的IP地址是否与该虚拟机所在的存储服务器的IP地址相同,如果是,则根据所述新***的待处理消息中的处理参数信息对存储在所述存储路径的对象进行处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410508764.1A CN104239125B (zh) | 2014-09-28 | 2014-09-28 | 对象处理方法、分布式文件***及客户端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410508764.1A CN104239125B (zh) | 2014-09-28 | 2014-09-28 | 对象处理方法、分布式文件***及客户端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104239125A CN104239125A (zh) | 2014-12-24 |
CN104239125B true CN104239125B (zh) | 2018-04-10 |
Family
ID=52227259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410508764.1A Active CN104239125B (zh) | 2014-09-28 | 2014-09-28 | 对象处理方法、分布式文件***及客户端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104239125B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105701179B (zh) * | 2016-01-06 | 2018-12-18 | 南京斯坦德云科技股份有限公司 | 基于UniWhale的分布式文件***的视窗访问方法 |
CN106254544A (zh) * | 2016-09-28 | 2016-12-21 | 乐视控股(北京)有限公司 | 数据访问方法及装置 |
CN109428861A (zh) * | 2017-08-29 | 2019-03-05 | 阿里巴巴集团控股有限公司 | 网络通信方法及设备 |
CN107844542A (zh) * | 2017-10-26 | 2018-03-27 | 山东浪潮通软信息科技有限公司 | 一种分布式文件存储方法及装置 |
CN113688175A (zh) * | 2020-05-18 | 2021-11-23 | 北京沃东天骏信息技术有限公司 | 一种数据处理方法和装置 |
CN114116655A (zh) * | 2021-12-08 | 2022-03-01 | 北京交研智慧科技有限公司 | 基于虚拟机的并行文件存储方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1619522A (zh) * | 2003-11-17 | 2005-05-25 | 联想(北京)有限公司 | 机群文件服务***及其输入输出处理方法 |
CN102932472A (zh) * | 2012-11-13 | 2013-02-13 | 深圳市路友网络科技有限公司 | 一种数据处理方法以及通信*** |
CN103944994A (zh) * | 2014-04-25 | 2014-07-23 | 中国联合网络通信集团有限公司 | 分布式资源获取方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8819208B2 (en) * | 2010-03-05 | 2014-08-26 | Solidfire, Inc. | Data deletion in a distributed data storage system |
KR101694288B1 (ko) * | 2012-06-08 | 2017-01-09 | 한국전자통신연구원 | 비대칭형 클러스터 파일 시스템의 데이터 관리 방법 |
-
2014
- 2014-09-28 CN CN201410508764.1A patent/CN104239125B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1619522A (zh) * | 2003-11-17 | 2005-05-25 | 联想(北京)有限公司 | 机群文件服务***及其输入输出处理方法 |
CN102932472A (zh) * | 2012-11-13 | 2013-02-13 | 深圳市路友网络科技有限公司 | 一种数据处理方法以及通信*** |
CN103944994A (zh) * | 2014-04-25 | 2014-07-23 | 中国联合网络通信集团有限公司 | 分布式资源获取方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104239125A (zh) | 2014-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104239125B (zh) | 对象处理方法、分布式文件***及客户端设备 | |
AU2020307540B2 (en) | Securing communications between services in a cluster using load balancing systems and methods | |
EP3251048B1 (en) | Executing an operation over file repositories located in different authentication domains using a representational state transfer (rest)-compliant client | |
CN106656849B (zh) | 报文限速方法及装置 | |
JP6766895B2 (ja) | セキュアな通信を行う方法および産業コンピューティング装置 | |
CN106101291A (zh) | 一种传输文件的方法、***、服务器及客户端 | |
EP3637723A1 (en) | Resource access method and apparatus | |
EP1454247A1 (en) | System and method for downloading data using a proxy | |
CN107222545B (zh) | 一种数据传输方法及装置 | |
CN105208108B (zh) | Web环境下的文件上传/下载方法及***、服务器、客户端 | |
US20150371327A1 (en) | System for dynamically selecting a communications fabric | |
CN104618388B (zh) | 快速注册登录方法及对应的重置服务器、信息服务器 | |
CN108847952A (zh) | 请求链路上下文的处理方法、装置及*** | |
US20230315793A1 (en) | Automated web page accessing | |
CN108563697A (zh) | 一种数据处理方法、装置和存储介质 | |
CN112445700A (zh) | 测试方法和装置 | |
CN111917810B (zh) | 一种云通信方法及装置、用户设备、网络设备 | |
CN110536118A (zh) | 一种数据获取方法、装置、以及计算机存储介质 | |
US20040068575A1 (en) | Method and apparatus for achieving a high transfer rate with TCP protocols by using parallel transfers | |
CN108076149A (zh) | 会话保持方法和装置 | |
CN110493175B (zh) | 一种信息处理方法、电子设备和存储介质 | |
CN108011801A (zh) | 数据传输的方法、设备、装置及*** | |
EP3024191B1 (en) | Data processing system, center apparatus and program | |
CN110266698A (zh) | 通过区块链的知识分享数据上链方法及其设备 | |
CN106060155B (zh) | P2p资源共享的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |