FastDFS一个开源高效的分布式文件系统

FastDFS一个开源高效的分布式文件系统,第1张

FastDFS是一个开源的轻量级分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。 FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。
FastDFS是一个开源的轻量级分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。
存储节点存储文件,完成文件管理的所有功能:存储、同步和提供存取接口,FastDFS同时对文件的meta data进行管理。所谓文件的meta data就是文件的相关属性,以键值对(key value pair)方式表示,如:width=1024,其中的key为width,value为1024。文件meta data是文件属性列表,可以包含多个键值对。
FastDFS系统结构如下图所示:

跟踪器和存储节点都可以由一台多台服务器构成。跟踪器和存储节点中的服务器均可以随时增加或下线而不会影响线上服务。其中跟踪器中的所有服务器都是对等的,可以根据服务器的压力情况随时增加或减少。
为 了支持大容量,存储节点(服务器)采用了分卷(或分组)的组织方式。存储系统由一个或多个卷组成,卷与卷之间的文件是相互独立的,所有卷的文件容量累加就 是整个存储系统中的文件容量。一个卷可以由一台或多台存储服务器组成,一个卷下的存储服务器中的文件都是相同的,卷中的多台存储服务器起到了冗余备份和负 载均衡的作用。
在卷中增加服务器时,同步已有的文件由系统自动完成,同步完成后,系统自动将新增服务器切换到线上提供服务。
当存储空间不足或即将耗尽时,可以动态添加卷。只需要增加一台或多台服务器,并将它们配置为一个新的卷,这样就扩大了存储系统的容量。
FastDFS中的文件标识分为两个部分:卷名和文件名,二者缺一不可。

FastDFS file upload
上传文件交互过程:
1 client询问tracker上传到的storage,不需要附加参数;
2 tracker返回一台可用的storage;
3 client直接和storage通讯完成文件上传。
FastDFS file download
下载文件交互过程:
1 client询问tracker下载文件的storage,参数为文件标识(卷名和文件名);
2 tracker返回一台可用的storage;
3 client直接和storage通讯完成文件下载。
需要说明的是,client为使用FastDFS服务的调用方,client也应该是一台服务器,它对tracker和storage的调用均为服务器间的调用。
google code地址:>

C/S分布式模式,是计算机用语。C是指Client,S是指Server。C/S模式就是指客户端/服务器模式。是计算机软件协同工作的一种模式。由于Web浏览器的兴起,B/S模式逐步取代了C/S模式,被更广泛地应用。

根据客户/服务器(Client/Server简记为C/S)体系结构的概念,至少用两台计算机来分别充当客户机和服务器角色。

C/S服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或SQL Server。客户端需要安装专用的客户端软件。

扩展资料:

C\S客户端优点:

1、C/S功能强大,可以减轻服务器端压力,如果用户的需求特别复杂,用C/S。

2、C/S程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。

3、C/S一般建立在专用的网络上,小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务。

4、C/S一般面向相对固定的用户群,对信息安全的控制能力很强.一般高度机密的信息系统采用C/S结构适宜.可以通过B/S发布部分可公开信息。

客户机/服务器(Client/Server) 及其特点
客户机/服务器这个名词虽然近年来报刊杂志上经常出现,但对这一术语至今尚无统一的定义。首先,客户机/服务器可以被理解为是一个物理上分布的逻辑整体,它是由客户机、服务器和连接支持部分组成。其中客户机是体系结构的核心部分,是一个面向最终用户的接口设备或应用程序。它是一项服务的消耗者,可向其他设备或应用程序提出请求,然后再向用户显示所得信息;服务器是一项服务的提供者,它包含并管理数据库和通信设备,为客户请求过程提供服务;连接支持是用来连接客户机与服务器的部分,如网络连接、网络协议、应用接口等。客户机 / 服务器具有以下特点:
(1)可实现资源共享。C/L结构中的资源是分布的,客户机与服务器具有一对多的关系和运行环境。用户不仅可存取在服务器和本地工作站上的资源,还可以享用其他工作站上的资源,实现了资源共享。
(2)可实现管理科学化和专业化。系统中的资源分布在各服务器和工作站上,可以采用分层管理和专业化管理相结合的方式,用户有权去充分利用本部门、本领域的专业知识来参与管理,使得各级管理更加科学化和专业化。
(3)可快速进行信息处理。由于在 C/S 结构中是一种基于点对点的运行环境,当一项任务提出请求处理时,可以在所有可能的服务器间均衡地分布该项任务的负载。这样,在客户端发出的请求可由多个服务器来并行进行处理,为每一项请求提供了极快的响应速度和较高的事务吞吐量。
(4)能更好地保护原有的资源。由于C/S是一种开放式的结构,可有效地保护原有的软、硬件资源。以前,在其他环境下积累的的数据和软件均可在C/S中通过集成而保留使用,并且可以透明地访问多个异构的数据源和自由地选用不同厂家的数据应用开发工具,具有高度的灵活性;而以前的硬件亦可完全继续使用,当在系统中增加硬件资源时,不会减弱系统的能力,同时客户机和服务器均可单独地升级,故具有极好的可扩充性。

参考资料:

>客户机/服务器(Client/Server) 及其特点
客户机/服务器这个名词虽然近年来报刊杂志上经常出现,但对这一术语至今尚无统一的定义。首先,客户机/服务器可以被理解为是一个物理上分布的逻辑整体,它是由客户机、服务器和连接支持部分组成。其中客户机是体系结构的核心部分,是一个面向最终用户的接口设备或应用程序。它是一项服务的消耗者,可向其他设备或应用程序提出请求,然后再向用户显示所得信息;服务器是一项服务的提供者,它包含并管理数据库和通信设备,为客户请求过程提供服务;连接支持是用来连接客户机与服务器的部分,如网络连接、网络协议、应用接口等。客户机 / 服务器具有以下特点:
(1)可实现资源共享。C/L结构中的资源是分布的,客户机与服务器具有一对多的关系和运行环境。用户不仅可存取在服务器和本地工作站上的资源,还可以享用其他工作站上的资源,实现了资源共享。
(2)可实现管理科学化和专业化。系统中的资源分布在各服务器和工作站上,可以采用分层管理和专业化管理相结合的方式,用户有权去充分利用本部门、本领域的专业知识来参与管理,使得各级管理更加科学化和专业化。
(3)可快速进行信息处理。由于在 C/S 结构中是一种基于点对点的运行环境,当一项任务提出请求处理时,可以在所有可能的服务器间均衡地分布该项任务的负载。这样,在客户端发出的请求可由多个服务器来并行进行处理,为每一项请求提供了极快的响应速度和较高的事务吞吐量。
(4)能更好地保护原有的资源。由于C/S是一种开放式的结构,可有效地保护原有的软、硬件资源。以前,在其他环境下积累的的数据和软件均可在C/S中通过集成而保留使用,并且可以透明地访问多个异构的数据源和自由地选用不同厂家的数据应用开发工具,具有高度的灵活性;而以前的硬件亦可完全继续使用,当在系统中增加硬件资源时,不会减弱系统的能力,同时客户机和服务器均可单独地升级,故具有极好的可扩充性。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10606415.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-09
下一篇 2023-05-09

发表评论

登录后才能评论

评论列表(0条)

保存