fastDFS
docker 部署fastDFS
docker pull delron/fastdfs
docker-compose.yml
version: '3'services:fastdfs_tracker:image: delron/fastdfs:latestcontainer_name: trackerhostname: trackernetwork_mode: hostports:- "22122:22122"volumes:- ./data/tracker:/var/fdfscommand: trackerrestart: unless-stoppedfastdfs_storage:image: delron/fastdfs:latestcontainer_name: storagehostname: storagenetwork_mode: hostports:- "8888:8888"- "23000:23000"environment:- TRACKER_SERVER=服务器ip:22122volumes:- ./data/storage:/var/fdfsdepends_on:- fastdfs_trackercommand: storagerestart: unless-stopped
注意修改docker-compose.yml中的服务器ip
python操作fastDFS
pip3 install fdfs-client-py3
fdfs_tracker.conf connect_timeout=30 network_timeout=60 tracker_server = 127.0.0.1:22122 http.tracker_server_port = 8888
from fdfs_client.client import Fdfs_clientdef mkdir_p(path):Path(path).mkdir(parents=True, exist_ok=True)class FdfsClient:def __init__(self):tracker_conf_path = "./fdfs_tracker.conf" # tracker配置文件的地址self.client = Fdfs_client(client=tracker_conf_path)def upload_by_filename(self, file_path):'''文件上传当有一个文件在本地磁盘上,并且知道文件的路径时,可以使用这个方法:param file: 文件路径:return:{'Group name': 'group1', 'Remote file_id': 'group1/M00/00/00/PAo80GdNlk0AAAABAwXgAHrGIgk207.iso','Status': 'Upload successed.', 'Local file name': '/home/wangxiuyan/06-vm/iso/xxxxxxxxx.iso','Uploaded size': '4.05GB', 'Storage IP': '60.10.60.208'}'''ret = self.client.upload_by_filename(file_path)print(ret)return retdef upload_by_buffer(self, file_buffer, file_name):'''文件上传当已经将文件读取到内存中(例如从网络下载的数据、从数据库获取的数据等),或者直接上传内存中的数据时,可以使用这个方法:param file_buffer: 文件二进制内容:param file_name: 文件名:return:'''ret = self.client.upload_by_buffer(file_buffer, file_name)print(ret)return retdef delete_file(self, file_id):'''删除文件:param file_id: 文件在fastDFS中的 Remote file_id:return:'''ret = self.client.delete_file(file_id)print(ret)return retdef download_to_file(self, save_path, file_id):'''下载文件:param save_path: 文件保存路径:param file_id: 文件在fastDFS中的 Remote file_id:return:'''res = self.client.download_to_file(save_path, file_id)print(res)return resdef list_all_groups(self):ret = self.client.list_all_groups()print(ret)return retdef get_meta_data(self, file_id):ret = self.client.get_meta_data(file_id)print(ret)return ret
相关文章:
fastDFS
docker 部署fastDFS docker pull delron/fastdfs docker-compose.yml version: 3services:fastdfs_tracker:image: delron/fastdfs:latestcontainer_name: trackerhostname: trackernetwork_mode: hostports:- "22122:22122"volumes:- ./data/tracker:/var/fdfsco…...
【Linux】存储
声明:以下内容均来学习自《Linux就该这么学》一书 Linux系统中的一切文件都是从“根(/)”目录开始的,并按照文件系统层次化标准(FHS)采用树形结构来存放文件,以及定义了常见目录的用途。此外,Linux系统中的…...
hadoop单机安装
步骤 1:安装 Java 安装 OpenJDK bash sudo yum install -y java-1.8.0-openjdk 验证 Java 安装 bash java -version 输出类似以下内容表示成功: arduino openjdk version “1.8.0_xxx” 步骤 2:下载 Hadoop 下载 Hadoop 安装包 前往 Hadoop 官方下载页面,获取最新稳…...
产品批量分类设置——未来之窗行业应用跨平台架构
一、批量统计分类 提高效率 节省时间:当商品数量庞大时,手动逐个修改商品分类是一项极其耗时的任务。例如,一个电商平台有数千种商品,如果手动操作,可能需要花费数天甚至数周的时间来完成分类转移。而批量设置功能可以…...
2024年中国各省份碳相关投资分析:区域差异与未来趋势
随着中国“双碳”目标的推进,各省份的碳相关投资逐渐成为推动绿色经济转型的关键力量。2024年,各地的双碳项目进入了快速发展阶段,尤其是在清洁能源、绿色技术和碳捕集领域。本文将分析中国各省份在碳减排、碳中和目标实现过程中的投资重点和…...
【六足机器人】03步态算法
温馨提示:此部分内容需要较强的数学能力,包括但不限于矩阵运算、坐标变换、数学几何。 一、数学知识 1.1 正逆运动学(几何法) 逆运动学解算函数 // 逆运动学-->计算出三个角度 void inverse_caculate(double x, double y, …...
路由VueRouter的基本使用
1.下载VueRouter到当前工程。 vue2:VueRouter3.x Vuex3.x。 vue3:VueRouter4.x Vuex4.x。 在终端使用命令: year add vue-router3.6.5 2.引入。 import VueRouter from vue-router 3,安装注册。 Vue.use(VueRouter) 4…...
Guiding a Diffusion Model with a Bad Version of Itself
Guiding a Diffusion Model with a Bad Version of Itself Abstract1. Introduction2. Background3. Why does CFG improve image quality?Score matching leads to outliers.CFG 消除异常值Discussion 4 Our method Abstract 在图像生成扩散模型中,主要关注的轴心…...
快速上手!低功耗Air724UG模组软件指南:FTP示例
Air724UG模组集成了高性能处理器和丰富的外设接口,支持多种通信协议,包括FTP(文件传输协议)。通过Air724UG模组,开发者可以轻松实现设备的远程文件管理功能。一起接着看下去吧! 一、简介 FTP(…...
GAMES101 完结篇(笔记和作业)
写在前面 我已经把笔记和作业代码放在了GitHub上,欢迎访问GAMES101笔记及作业 (github.com),如果对你有帮助,欢迎fork or star 下面我想简单介绍一下这里面的东西 Homework Homework文件夹里有0~8的作业框架,参考的其他大佬的代…...
3D Slicer与MONAI人工智能三维影像处理
如何又快又高效的做三维影像?勾画roi? 案例1 患者腹腔占位半月余,完善CT增强扫描,使用Slicer 对肿瘤,胰腺,动脉,静脉进行三维重建。重建时间1-5分钟。 案例2 胸部CT平扫,使用 slic…...
NC65客开单据自定义项处理以及自定义项相关介绍(超级详细带图以及代码NC65自定义项大全)
自定义项教程 自定义项和物料辅助属性简介 自定义档案的概念: NC系统中有大量的档案,这些档案中有相当一部分为系统预置的,鉴于用户对系统应用的个性化需求,系统支持用户自定用户自己的档案,并对其进行维护管理&…...
责任链模式的理解和实践
责任链模式(Chain of Responsibility)是行为型设计模式之一,它通过将多个对象连成一条链,并沿着这条链传递请求,直到有对象处理它为止。这个模式的主要目的是将请求的发送者和接收者解耦,使请求沿着处理链传…...
【大模型-向量库】详解向量库管理:连接管理、集合管理、向量管理
在向量数据库(Vector Database)中,向量库管理的概念是非常重要的,因为它涉及到如何高效地存储、索引和检索大规模的向量数据。向量库管理通常包括三个主要方面:连接管理、集合管理和向量管理。以下是对这三者的详细解释…...
MySQL书籍推荐
《高性能MySQL(第4版)》-西尔维亚博特罗斯 系统层次 Mysql性能优化和高可用架构实践 2020 系统基础 MySQL性能调优与架构设计 系统基础 Mysql技术大全 2021 综合 MySQL数据库应用案例教程 综合实战 从入门到项目实践 综合实战 丰富 超值 MySQ…...
常见的数据结构:
数据结构是计算机科学中的一个核心概念,它涉及到组织、管理和存储数据的方式,以便可以有效地访问和修改数据。数据结构的形式有很多,每种结构都有其特定的用途、优势和局限性。以下是一些常见的数据结构: 1. **数组(A…...
快速、高效的数据处理:深入了解 Polars 库
快速、高效的数据处理:深入了解 Polars 库 在数据科学和分析领域,Pandas 一直是 Python 数据处理的标杆。然而,随着数据量的增加,Pandas 在性能上的局限性逐渐显现。为了解决这一问题,越来越多的开发者开始寻找替代方…...
【LINUX】Linux 下打包与部署 Java 程序的全流程指南
文章目录 一、Java 程序打包1. 使用 Maven 打包2. 使用 Gradle 打包 二、运行 JAR 文件1. 前台运行2. 后台运行方法 1:使用 & 符号方法 2:使用 nohup 三、关闭运行中的程序1. 查找程序 PID2. 关闭程序 四、使用 Shell 脚本管理程序1. 创建 Shell 脚本…...
Spark 计算总销量
Spark 计算总销量 题目: 某电商平台存储了所有商品的销售数据,平台希望能够找到销量最好的前 N 个商品。通过分析销售记录,帮助平台决策哪些商品需要更多的推广资源。 假设你得到了一个商品销售记录的文本文件 product_id, product_name,…...
矩阵置零
矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地算法。 示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2ÿ…...
3步解锁专业级HDR画质:MPC Video Renderer完全使用指南
3步解锁专业级HDR画质:MPC Video Renderer完全使用指南 【免费下载链接】VideoRenderer Внешний видео-рендерер 项目地址: https://gitcode.com/gh_mirrors/vi/VideoRenderer 还在为Windows播放HDR视频效果不佳而烦恼吗?MPC…...
海外渠道通知短信接口
在跨境业务体系中,企业常面临区域代理商分散、信息同步滞后、补货提醒不及时的问题,传统邮件、即时通讯易出现漏读、延迟,而国际渠道通知短信接口凭借触达稳定、实时性强的优势,成为跨境企业对接代理商的高效通信方案。本文从接口…...
办公效率翻倍!OpenClaw AI 数字员工实操教程
适配系统:Windows 10 64位(新手专享版) 产品亮点: 零门槛安装:无需命令行操作,免去复杂环境配置即开即用:解压即安装,内置完整运行环境可视化操作:全程图形界面&#x…...
3分钟学会B站缓存视频永久保存:m4s-converter完整使用指南
3分钟学会B站缓存视频永久保存:m4s-converter完整使用指南 【免费下载链接】m4s-converter 一个跨平台小工具,将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 你是否曾经在B站缓存了珍贵…...
避坑指南:STM32连接畅科125KHz RFID读卡器的那些事儿(附完整工程)
STM32与125KHz RFID读卡器实战:从硬件对接到数据解析全流程 在物联网和自动化识别领域,低频RFID技术因其稳定的性能和较低的成本,依然占据着重要地位。本文将深入探讨如何基于STM32F103系列微控制器实现与125KHz RFID读卡器的完整对接方案&a…...
AI智能体开发(一):从概念到架构设计
定义与核心特征 AI智能体(AI Agent)是一种能够自主感知环境、做出决策并执行行动的AI系统。 与传统AI模型不同,Agent不仅仅是被动地"回答问题",而是能够主动地"完成任务"。它像一个智能助手,能够理解你的目标,规划执行步骤,调用各种工具,最终交付…...
SeekStorm PDF文档搜索指南:从文件解析到全文索引的完整流程
SeekStorm PDF文档搜索指南:从文件解析到全文索引的完整流程 【免费下载链接】SeekStorm SeekStorm: vector & lexical search - in-process library & multi-tenancy server, in Rust. 项目地址: https://gitcode.com/gh_mirrors/se/SeekStorm Seek…...
如何彻底解决Mac设备滚动方向冲突:Scroll Reverser终极配置指南
如何彻底解决Mac设备滚动方向冲突:Scroll Reverser终极配置指南 【免费下载链接】Scroll-Reverser Per-device scrolling prefs on macOS. 项目地址: https://gitcode.com/gh_mirrors/sc/Scroll-Reverser 你是不是经常在Mac上同时使用触控板和鼠标࿰…...
用C语言搞定PTA数据结构7-1天梯地图:迪杰斯特拉算法实战与避坑指南
从零实现PTA天梯地图:双权重迪杰斯特拉算法全解析 当面对PTA数据结构7-1天梯地图这类双权重图的最短路径问题时,许多初学者会陷入算法选择的困境。本文将彻底拆解如何用C语言实现这一经典题目,不仅教你写出能AC的代码,更重要的是掌…...
3分钟快速上手:Hanime1Plugin安卓插件打造纯净动画观影体验终极指南
3分钟快速上手:Hanime1Plugin安卓插件打造纯净动画观影体验终极指南 【免费下载链接】Hanime1Plugin Android插件(https://hanime1.me) (NSFW) 项目地址: https://gitcode.com/gh_mirrors/ha/Hanime1Plugin 你是否厌倦了动画观影时被各种广告弹窗打断&#x…...
