自定义文件存储系统, 前提是使用Docker安装和运行FastDFS.

1.⾃自定义⽂文件存储系统的类

from django.core.files.storage import Storage
class FastDFSStorage(Storage):
...

2. 内部实现

class FastDFSStorage(Storage):"""⾃自定义Django⽂文件存储系统"""def __init__(self, client_conf=None, base_url=None):self.client_conf = client_conf or settings.FDFS_CLIENT_CONFself.base_url = base_url or settings.FDFS_BASE_URLdef _open(self, name, mode='rb'):"""打开⽂文件时调⽤用的,⽬目前⽤用不不到,但是必须实现,所以pass"""passdef _save(self, name, content):"""保存⽂文件时调⽤用的:param name: 要保存的⽂文件名字:param content: 要保存的⽂文件内容:return: ⽂文件在fdfs唯⼀一标识(file_id)"""client = Fdfs_client(self.client_conf)ret = client.upload_by_buffer(content.read())# 判断上传是否成功if ret.get('Status') != 'Upload successed.':raise Exception('fastfds upload failed')# 返回结果file_id = ret.get('Remote file_id')return file_iddef exists(self, name):"""判断⽂文件是否存在时调⽤用的,返回Fasle告诉Django每次都是新的⽂文件"""return Falsedef url(self, name):"""返回⽂文件全路路径"""return self.base_url + name

3.修改默认的存储后端, 修改配置文件

# django⽂文件存储
DEFAULT_FILE_STORAGE = 'meiduo_mall.utils.fastdfs.fdfs_storage.FastDFSStorage'
# FastDFS
FDFS_BASE_URL = 'http://----ip地址----:8888/'
FDFS_CLIENT_CONF = os.path.join(BASE_DIR, 'utils/fastdfs/client.conf')

FastDFS自定义文件存储系统相关推荐

  1. django中FastDFS客户端与自定义文件存储系统

    什么是FastDFS FastDFS 是用 c 语言编写的一款开源的分布式文件系统.FastDFS 为互联网量身定制, 充分考虑了冗余备份.负载均衡.线性扩容等机制,并注重高可用.高性能等指标,使用 ...

  2. 搭建FastDFS分布式文件存储系统教程

    转载来源:https://github.com/happyfish100/fastdfs/wiki 搭建FastDFS分布式文件存储系统教程 环境准备 使用的系统软件 名称 说明 centos 7.x ...

  3. FastDfs分布式文件存储系统

    FastDfs分布式文件存储系统 FastDfs 是一个开源的高性能分布式文件系统(DFS). 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡.主要解决了海量数据存储问题,特别适 ...

  4. Docker部署Fastdfs分布式文件存储系统

    Docker部署Fastdfs分布式文件存储系统 Fastdfs分布式文件存储系统 拉取镜像 部署Tracker和Storage 开放端口 SpringBoot代码示例 Fastdfs分布式文件存储系 ...

  5. 超简单用Docker安装FastDFS分布式文件存储系统

    个人简介 作者是一个来自河源的大三在校生,以下笔记都是作者自学之路的一些浅薄经验,如有错误请指正,将来会不断的完善笔记,帮助更多的Java爱好者入门. Docker安装FastDFS分布式文件存储系统 ...

  6. FastDFS - 分布式文件存储系统(文件存储从此无忧)

    简介 FastDFS 是一个开源的高性能分布式文件系统(DFS). 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡.主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4K ...

  7. FastDFS - 分布式文件存储系统

    目录 一.分布式文件存储 1.分布式文件存储的由来 2.常见的分布式存储框架 二.FastDFS介绍 三.FastDFS安装 1.拉取镜像文件 2.构建Tracker服务 3.构建Storage服务 ...

  8. 【运维实战】1.FastDFS分布式的文件存储系统入门介绍与实践

    本章目录 0x00 基础介绍 0.前言 1.简介 2.特性 3.架构 Tracker Server Storage Server Client 4.存储策略 5.过程剖析 文件上传 - Upload ...

  9. fastdfs安装_用asp.net core结合fastdfs打造分布式文件存储系统

    今天主要是对开发过程,以及对FastDFS这个通用的分布式文件存储服务的单机及集群安装部署过程做个总结.希望对想要自建分布式文件系统的朋友有所帮助. 什么是FastDFS 这里先简单介绍下分布式文件存 ...

最新文章

  1. [日常] Go语言圣经-基于select的多路复用习题
  2. Gartner:移动设备在工作场所中的使用尚未成熟
  3. jstat PID not found产生的原因
  4. 信号与系统 chapter6 时变与时不变系统
  5. 人工智能能够构建一个自主驱动云吗?
  6. FileZilla 服务器端win server2008以上的配置
  7. day42-mysql索引
  8. $.ajax的回调function中的this与 element-ui的this.$alert冲突问题解决
  9. chrome最强大的浏览器插件推荐,只要你会用其他的插件你可以删除了
  10. Funcode实现打飞虫1
  11. 【源码】采用PI反馈控制的DC-DC降压变换器仿真
  12. MATLAB利用最速梯度下降法求解f(x)函数极小点
  13. 浪潮服务器不显示光驱,电脑不从光驱启动怎么办?我是浪潮品牌的机子。
  14. python画图之小坦克
  15. NFC应用 - 会展用
  16. java处理word文档 替换文本 水印 页眉
  17. 生物技术如何利用计算机思维,阿米巴,真正强大的生物计算机了解一下?
  18. win10 Python3.9.5安装报错0x80070652
  19. emeditor文本编辑器 秘钥
  20. mysql 除数为0显示100,保留两位小数,显示百分号的相关操作

热门文章

  1. overleaf 插入图片_Overleaf手册(三)--图片
  2. Solr初探(五)---Solr7.5利用DIH导入结构化数据构建索引
  3. Java极速入门系列:第一章Java概述、Java环境、IDEA开发工具
  4. 树莓派csi摄像头和usb摄像头_一、树莓派CSI摄像头
  5. shell sftp 命令大全
  6. oracle数据库ORA-报错大全
  7. android中bitmap压缩的几种方法详解
  8. executeQuery、executeUpdate和execute
  9. memcache1.5.8——LUR策略
  10. U-Net实现医学图像分割(pytorch)