一种分布式系统优化方法及设备与流程

文档序号:11177433阅读:1058来源:国知局
一种分布式系统优化方法及设备与流程

本发明涉及存储技术领域,特别是涉及一种分布式系统优化方法及设备。



背景技术:

在分布式云存储领域,云存储系统服务端一般带有元数据软件用来统一管理文件系统的元数据信息。随着文件数目和客户端的增多,服务端需要管理很多文件的状态、锁等各种元数据信息,这会导致当多个客户端同时访问同一个目录或文件时,客户端获取文件的元数据实时性较低,元数据服务端的压力很大。

为了解决这个问题,目前有很多种方式,比如把文件系统的多个目录绑定到不同的元数据服务端,增加元数据服务端的内存等,但是由于文件系统的一致性的要求,元数据服务端需要维护的文件的状态很多,流程非常复杂,前述的方式对提升客户端获取文件系统元数据的性能存在瓶颈。



技术实现要素:

有鉴于此,本发明的目的在于提供一种分布式系统优化方法及设备,可以提高客户端获取元数据的性能和实时性,减少元数据服务端的压力,提升分布式存储产品的竞争力。其具体方案如下:

一种分布式系统优化方法,所述分布式系统中的多个客户端与元数据服务端之间通过消息队列建立连接,所述方法包括:

启动所述消息队列;

任一所述客户端在目录下创建文件,并向所述元数据服务端发起消息发送请求;

所述元数据服务端向所述消息队列推送消息;

除任一所述客户端之外的其他所述客户端从所述消息队列收到的消息中获取到所述目录和所述文件的元数据。

优选地,在本发明实施例提供的上述分布式系统优化方法中,还包括:

各所述客户端清理所述文件的元数据,并向所述元数据服务端发起消息发送请求;

所述元数据服务端记录各所述客户端持有的所述文件的元数据缓存状态。

优选地,在本发明实施例提供的上述分布式系统优化方法中,所述元数据服务端向所述消息队列推送的消息包括在所述目录下创建文件的智能客户端、所述文件的文件名以及所述目录的属性信息。

优选地,在本发明实施例提供的上述分布式系统优化方法中,各所述客户端通过订阅的方式获取到所述目录和所述文件的元数据。

优选地,在本发明实施例提供的上述分布式系统优化方法中,在所述目录下创建文件的智能客户端,用于标识所述目录的主题。

本发明实施例还提供了一种分布式系统优化设备,所述分布式系统中的多个客户端与元数据服务端之间通过消息队列建立连接,所述设备包括:

消息队列启动模块,用于启动所述消息队列;

文件创建模块,用于所述客户端在目录下创建文件,并向所述元数据服务端发起消息发送请求;

消息推送模块,用于所述元数据服务端向所述消息队列推送消息;

元数据获取模块,用于位于所述客户端周边的另一客户端通过所述消息队列中的消息获取到所述目录和所述文件的元数据。

优选地,在本发明实施例提供的上述分布式系统优化设备中,所述设备还包括:

元数据清理模块,用于各所述客户端清理所述文件的元数据,并向所述元数据服务端发起消息发送请求;

元数据记录模块,用于所述元数据服务端记录各所述客户端持有的所述文件的元数据缓存状态。

本发明所提供的一种分布式系统优化方法及设备,分布式系统中的多个客户端与元数据服务端之间通过消息队列建立连接,该方法包括:启动消息队列;任一客户端在目录下创建文件,并向元数据服务端发起消息发送请求;元数据服务端向消息队列推送消息;除任一客户端之外的其他客户端从消息队列收到的消息中获取到目录和文件的元数据。本发明采用一种基于消息队列的目录状态记录方式,将消息队列用于文件系统的多个客户端和元数据服务端的通信和文件的状态维护,可以提高客户端获取元数据的性能和实时性,减少元数据服务端的压力,提升分布式存储产品的竞争力。

附图说明

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

图1为本发明实施例提供的分布式系统的结构示意图;

图2为本发明实施例提供的分布式系统优化方法流程图之一;

图3为本发明实施例提供的分布式系统优化方法流程图之二;

图4为本发明实施例提供的分布式系统优化设备的结构示意图之一;

图5为本发明实施例提供的分布式系统优化设备的结构示意图之二。

具体实施方式

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

本发明提供一种分布式系统优化方法,如图1所示,分布式系统中的多个客户端与元数据服务端之间通过消息队列建立连接(图1仅示出了两个客户端,分别为客户端1和客户端2),如图2所示,该方法包括以下步骤:

s201、启动消息队列;

s202、任一客户端在目录下创建文件,并向元数据服务端发起消息发送请求;

s203、元数据服务端向消息队列推送消息;

s204、除任一客户端之外的其他客户端从消息队列收到的消息中获取到目录和文件的元数据。

在本发明实施例提供的上述分布式系统优化方法中,首先启动消息队列;然后任一客户端在目录下创建文件,并向元数据服务端发起消息发送请求;之后元数据服务端向消息队列推送消息;最后除任一客户端之外的其他客户端从消息队列收到的消息中获取到目录和文件的元数据。这样采用一种基于消息队列的目录状态记录方式,将消息队列用于文件系统的多个客户端和元数据服务端的通信和文件的状态维护,可以提高客户端获取元数据的性能和实时性,减少元数据服务端的压力,提升分布式存储产品的竞争力。

需要说明的是,步骤s201可以在多个主机节点上启动消息队列服务;步骤s204除任一客户端之外的其他客户端直接从消息队列收到的消息中获取到目录和文件的元数据,无需向元数据服务端轮询,即可获取到最新的元数据,并可以继续进行后续的业务,这样减少了元数据服务端的处理请求的压力,同时提高了客户端获取元数据的实时性。

还需要说明的是,在步骤s201和步骤s202之间,客户端可以分配一定的缓存用来缓存整个目录的元数据信息,并订阅目录的主题。

进一步地,在具体实施时,在本发明实施例提供的上述分布式系统优化方法中,如图3所示,还可以包括以下步骤:

s301、各客户端清理文件的元数据,并向元数据服务端发起消息发送请求;

s302、元数据服务端记录各客户端持有的文件的元数据缓存状态。

在具体实施时,在本发明实施例提供的上述分布式系统优化方法中,元数据服务端向消息队列推送的消息可以具体包括在目录下创建文件的智能客户端(inode)、文件的文件名以及目录的属性信息。

在具体实施时,在本发明实施例提供的上述分布式系统优化方法中,各客户端通过订阅的方式获取到目录和文件的元数据。

在具体实施时,在本发明实施例提供的上述分布式系统优化方法中,在目录下创建文件的智能客户端,可以用于标识目录的主题。

基于同一发明构思,本发明实施例还提供了一种分布式系统优化设备,由于该设备解决问题的原理与前述一种分布式系统优化方法相似,因此该设备的实施可以参见分布式系统优化方法的实施,重复之处不再赘述。

在具体实施时,本发明实施例提供的分布式系统优化设备,如图1所示,分布式系统中的多个客户端与元数据服务端之间通过消息队列建立连接,如图4所示,设备包括:

消息队列启动模块11,用于启动消息队列;

文件创建模块12,用于客户端在目录下创建文件,并向元数据服务端发起消息发送请求;

消息推送模块13,用于元数据服务端向消息队列推送消息;

元数据获取模块14,用于位于客户端周边的另一客户端通过消息队列中的消息获取到目录和文件的元数据。

在本发明实施例提供的上述分布式系统优化设备中,设计合理的多客户端和元数据服务的通信机制,具体地,通过采用消息队列的推送机制,可以减少客户端向后端的轮询,即减少客户端向元数据服务端获取元数据的请求次数,进而减少元数据的处理请求的压力,同时提高客户端获取元数据的实时性,此设备尤其适合大量创建文件,不删除或删除较少的业务场景。

进一步地,在具体实施时,在本发明实施例提供的上述分布式系统优化设备中,如图5所示,设备还可以包括:

元数据清理模块15,用于各客户端清理文件的元数据,并向元数据服务端发起消息发送请求;

元数据记录模块16,用于元数据服务端记录各客户端持有的文件的元数据缓存状态。

本发明实施例提供的一种分布式系统优化方法及设备,分布式系统中的多个客户端与元数据服务端之间通过消息队列建立连接,该方法包括:启动消息队列;任一客户端在目录下创建文件,并向元数据服务端发起消息发送请求;元数据服务端向消息队列推送消息;除任一客户端之外的其他客户端从消息队列收到的消息中获取到目录和文件的元数据。本发明采用一种基于消息队列的目录状态记录方式,将消息队列用于文件系统的多个客户端和元数据服务端的通信和文件的状态维护,可以提高客户端获取元数据的性能和实时性,减少元数据服务端的压力,提升分布式存储产品的竞争力。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

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

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