1、它是一个开源的分布式文件系统,它对文件进行管理。
功能有:文件存储、文件同步、文件访问(文件的上传下载)等。特别适合以文件为主的在线服务。
2、fastDFS服务端有两个角色:跟踪器(tracker)和存储点(storage)。跟踪器主要做调度监听工作,在访问上器负载均衡作用。
存储节点存储文件,完成文件管理的所有功能。如:存储、同步、提供存取接口。
3、fastDFS工作特点
tracker和storage可以是多台服务器。可以随时增加或下线而不会影响线上的服务。
为了支持大容量,storage采用了分卷分组的组织方式。存储系统由一个或多个卷组成。卷与卷之间是相互独立的。同一个卷中的文件都是相同的。
4、上传下载流程
上传文件交互过程:
1. client询问tracker上传到的storage,不需要附加参数;
2. tracker返回一台可用的storage;
3. client直接和storage通讯完成文件上传。
下载文件交互过程:
1. client询问tracker下载文件的storage,参数为文件标识(卷名和文件名);
2. tracker返回一台可用的storage;
3. client直接和storage通讯完成文件下载。
5、fastDFS的常用命令
#启动tracker 端口:23000 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start #启动storage 端口:22122 /usr/bin/fdfs_storaged /etc/fdfs/storage.conf start # 监控storage服务状态 /usr/bin/fdfs_monitor /etc/fdfs/client.conf
#停止服务 pkill -9 fdfs killall fdfs_storaged killall fdfs_trackerd 或者 /usr/bin/fdfs_storaged /etc/fdfs/storage.conf stop /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf stop
6.上传文件
/usr/bin/fdfs_upload_file /etc/fdfs/storage.conf test.txt 命令 storage配置文件绝对路径 需要上传的文件 上传完成之后返回上传之后的路径地址 /fastdfs/data/data/01/01/rBLilGHuexGAaMmzAAAH2EiPe7Q42.html fastdfs: 配置文件中的group_name 上传文件(2)(不能用于生产线上使用) fdfs_test storage配置文件的绝对路径 本地文件 实例:fdfs_test /etc/fdfs/storage.conf 1.txt
7.删除上传的文件
/usr/local/bin/fdfs_delete_file 配置文件 需要删除的文件路径 /usr/local/bin/fdfs_delete_file /etc/fdfs/client.conf group3/M00/00/00/wKgAUE5yiVK0VEpSACiWWseqpak.tar.gz
8.下载文件
/usr/local/bin/fdfs_download_file 配置文件 需要下载文件的路径 下载后改的名字 /usr/local/bin/fdfs_download_file /etc/fdfs/client.conf group3/M00/00/00/wKgAUE5yiVK0VEpSACiWWseqpak_big.tar.gz /cairo.tar.gz