原创
fastDfs入门
温馨提示:
本文最后更新于 2019年11月17日,已超过 1,832 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
fastDfs介绍
开源的分布式文件系统。
FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。
fastDfs的原理机制
推荐文章: https://juejin.im/post/5a51ff8df265da3e347b14e4
上传
上传交互过程
client询问tracker上传到的storage,不需要附加参数;
tracker返回一台可用的storage;
client直接和storage通讯完成文件上传。
下载
下载的交互过程
client询问tracker下载文件的storage,参数为文件标识(卷名和文件名);
tracker返回一台可用的storage;
client直接和storage通讯完成文件下载。
Docker安装fastDfs
如果是阿里云需要开启的端口:88、80、23000、22122、8888。
docker pull morunchang/fastdfs
docker run -d --name tracker --net=host morunchang/fastdfs sh tracker.sh
docker run -d --name storage --net=host -e TRACKER_IP=127.0.0.1:22122 -e GROUP_NAME=group1 morunchang/fastdfs sh storage.sh
例如我上传一个文件之后,会返回文件访问地址,然后加上IP地址和端口号即可访问原文件: http://127.0.0.1:8080/group1/M00/00/00/rBDDml3QIRCASf-AAACeKJzFOIA745.jpg
fastDfs命令操作
fdfs_appender_test
fdfs_appender_test1
fdfs_append_file
fdfs_crc32
fdfs_delete_file
fdfs_download_file
fdfs_file_info
fdfs_monitor
fdfs_storaged
fdfs_test
fdfs_test1
fdfs_trackerd
fdfs_upload_appender
fdfs_upload_file
举个栗子:
root@aliyun-lzhpo-ecs:/# ls
bin core dev home lib64 mnt mod_fastdfs_.conf proc run srv storage.sh sys tracker.sh var
boot data etc lib media mod_fastdfs.conf opt root sbin storage.conf storage_.conf tmp usr
root@aliyun-lzhpo-ecs:/# wget http://cdn.lzhpo.com/oneblog/20190716012043906.jpg
root@aliyun-lzhpo-ecs:/# ls
20190716012043906.jpg boot data etc lib media mod_fastdfs.conf opt root sbin storage.conf storage_.conf tmp usr
bin core dev home lib64 mnt mod_fastdfs_.conf proc run srv storage.sh sys tracker.sh var
root@aliyun-lzhpo-ecs:/# fdfs_upload_file storage.conf 20190716012043906.jpg
group1/M00/00/00/rBDDml3QJueAOYukAAjCo7BKqH4901.jpg
root@aliyun-lzhpo-ecs:/#
group1/M00/00/00/rBDDml3QJueAOYukAAjCo7BKqH4901.jpg
就是上传完毕返回的地址,接下来,带上我们的IP和端口即可访问了: http://127.0.0.1:8080/group1/M00/00/00/rBDDml3QJueAOYukAAjCo7BKqH4901.jpg
- 本文标签: Docker
- 本文链接: http://www.lzhpo.com/article/92
- 版权声明: 本文由lzhpo原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权