fastdfs

Java操作fastDFS

六眼飞鱼酱① 提交于 2019-12-02 06:31:55
一、加入Maven依赖 <dependency> <groupId>org.csource</groupId> <artifactId>fastdfs-client-java</artifactId> <version>1.27-SNAPSHOT</version> </dependency> 二、客户端代码 @RunWith(SpringRunner.class) @SpringBootTest public class GmallManageWebApplicationTests { @Test public void contextLoads() throws IOException, MyException { // 配置fdfs的全局链接地址 String tracker = GmallManageWebApplicationTests.class.getResource("/tracker.conf").getPath();// 获得配置文件的路径 ClientGlobal.init(tracker); TrackerClient trackerClient = new TrackerClient(); // 获得一个trackerServer的实例 TrackerServer trackerServer = trackerClient.getConnection();

fastdfs 合并存储trunk

我们两清 提交于 2019-12-02 05:55:21
文章目录 一、关于fastdfs 合并存储 二、fastdfs 合并存储trunk配置 1. 如何判断trunk配置是否生效 三、fastdfs 文件合并存储实现原理 1. 基础 2. Trunk文件内部结构 3. trunk相关数据结构 4. 源码学习 下载如何判断是否是trunk文件 四、FastDFS trunk 模式上传下载处理流程 1. TrunkServer 五、参考 一、关于fastdfs 合并存储 • 合并存储是指将多个小文件存储到一个较大的文件(trunk file)中,这个 trunk file的文件大小是固定的,比如64MB 。 • 小于一定size的文件才合并存储到trunk file中 ,否则在文件系统创建一个独立的文件来存储 • 海量小文件带来的挑战: —文件系统inode面临不够的风险 —文件系统定位文件的效率急剧下降 • 合并存储可以有效地解决上面的两个问题,解决海量小文件的存储和访问问题。 • 小文件合并存储是业界普遍采用的做法。 二、fastdfs 合并存储trunk配置 配置参数都在tracker.conf里 •所有参数均在tracker.conf中配置,storage server启动的时候,从tracker server上获取 •修改了合并存储相关参数后,需要先重启tracker server,然后再重启storage server

Linux安装FastDFS~Nginx~

柔情痞子 提交于 2019-12-02 05:01:02
发布于:2019-07-03 13:57 确保Linux联网 我这里使用的是CentOS7操作,联网教程 https://www.cnblogs.com/taopanfeng/p/10978752.html 先准备所需文件 安装所需的插件 yum -y install vim wget zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel perl net-tools unzip iptables iptables-services 防火墙最容易出错,我们先关闭防火墙,这一点尤为重要,我已采坑~~~ chkconfig iptables off 创建目录,用于存放文件 mkdir /usr/local/panfeng 进入创建好的目录 cd /usr/local/panfeng/ 依次执行下面文件,下载数据 wget http://ncu.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz wget http://nchc.dl.sourceforge.net/project/fastdfs

Centos7安装FastDFS

南笙酒味 提交于 2019-12-02 02:40:57
离线安装包准备: 将相关的安装包上传到 /usr/local 目录, 安装包下载 备用 链接: https://pan.baidu.com/s/1XILbs0XTXsyg-s-HtPkt4w 提取码: h5mf 复制这段内容后打开百度网盘手机App,操作更方便哦 并解压到当前目录 1.安装 gcc yum install -y gcc gcc-c++ 2.安装 perl yum install -y perl 3.安装 libevent yum install -y libevent 4.安装 libfastcommon libfastcommon 没有 yum 源,通过上传的安装包进行编译与安装 cd /usr/local/libfastcommon-1.0.7/ ./make.sh && ./make.sh install libfastcommon 安装好后会在 /usr/lib64 目录下生成 libfastcommon.so 库文件 由于 FastDFS 程序引用 usr/lib 目录所以需要将 /usr/lib64 下的库文件拷贝至 /usr/lib 下 cp /usr/lib64/libfastcommon.so /usr/lib 5.安装 tracker cd /usr/local/fastdfs-5.05/ ./make.sh && ./make.sh

php使用fastdfs

旧时模样 提交于 2019-12-02 02:26:46
一台网页服务器,一台redis服务器,网页服务器PHP使用redis 首先php需要安装php redis扩展 来源: https://www.cnblogs.com/yipianchuyun/p/11725840.html

那一定都是你的错!- 一次FastDFS并发问题的排查经历

主宰稳场 提交于 2019-12-02 00:07:50
前一段时间,业务部门同事反馈在一次生产服务器升级之后,POS消费上传小票业务偶现异常,上传小票业务有重试机制,有些重试三次也不会成功,他们排查了一下没有找到原因,希望架构部帮忙解决。 公司使用的是FastDFS来做的图片服务器,生产使用了六台服务器外加一个存储,集群采用的是:2个tracker+4个storage,storage分为两个group,使用独立的nginx做文件代理访问。各软件版本信息如下: 操作系统:centos6.9 FastDFS :5.05 libfastcommon:1.0.36 nginx :1.7.9 fastdfs-nginx-module:1.16 为了尽可能的模拟生产,我在测试环境1:1搭建了一套和生产一样的FastDFS集群,当时也写了搭建过程: FastDFS 集群 安装 配置 从日志中找线索 业务部门同事反馈,在一次生产服务器升级之后,重新搭建了一套FastDFS集群,然后过了几天就开始出现上传小票偶尔失败的问题。根据这些信息的反馈,我怀疑是否是FastDFS搭建有问题?这个怀疑点差点把我带到沟里去。 我拉取了FastDFS的日志,tracker服务器日志如下: [2017-09-19 09:13:52] ERROR - file: tracker_nio.c, line: 306, client ip: 192.168.0.1, pkg

分布式文件系统FastDFS详解

99封情书 提交于 2019-12-02 00:07:42
上一篇文章《 一次FastDFS并发问题的排查经历 》介绍了一次生产排查并发问题的经历,可能有些人对FastDFS不是特别的了解,因此计划写几篇文章完整的介绍一下这个软件。 为什么要使用分布式文件系统呢? 嗯,这个问题问的好,使用了它对我们有哪些好处?带着这个问题我们来往下看: 单机时代 初创时期由于时间紧迫,在各种资源有限的情况下,通常就直接在项目目录下建立静态文件夹,用于用户存放项目中的文件资源。如果按不同类型再细分,可以在项目目录下再建立不同的子目录来区分。例如: resources\static\file 、 resources\static\img 等。 优点 :这样做比较便利,项目直接引用就行,实现起来也简单,无需任何复杂技术,保存数据库记录和访问起来也很方便。 缺点 :如果只是后台系统的使用一般也不会有什么问题,但是作为一个前端网站使用的话就会存在弊端。一方面,文件和代码耦合在一起,文件越多存放越混乱;另一方面,如果流量比较大,静态文件访问会占据一定的资源,影响正常业务进行,不利于网站快速发展。 独立文件服务器 随着公司业务不断发展,将代码和文件放在同一服务器的弊端就会越来越明显。为了解决上面的问题引入独立图片服务器,工作流程如下:项目上传文件时,首先通过ftp或者ssh将文件上传到图片服务器的某个目录下,再通过ngnix或者apache来访问此目录下的文件

FastDFS原理详解及部署使用

大城市里の小女人 提交于 2019-12-02 00:03:47
前言 FastDFS是一个c语言编写的一个开源的轻量级分布式文件系统,它对文件进程管理,功能包括:文件存储,文件同步,文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题,特别适合以文件为载体的在线服务,如相册网站,视频网站等等,FastDFS为互联网量身定制,充分考虑了冗余备份,负载均衡,现行扩容等,并注重高可用,高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载服务。 博文大纲: 一、FastDFS原理及架构详解 二、部署Fast DFS架构 一、FastDFS原理及架构详解 1、FastDFS架构 FastDFS架构包括Tracker server和Storage server,client请求Tracker server 进行文件上传、下载,通过Tracker server调度最终由Storage server完成文件上传和下载。 Tracker server:负责调度及负载均衡,通过Tracker server,在文件上传时可以根据一些策略找到Storage server来提供上传服务,可以将tracker称为追踪服务器或调度服务器; Storage server:负责文件最终存储,客户端上传的文件最终存储在storage服务器上,Storage server没有实现自己的文件系统,而是利用操作系统的文件系统来管理文件

FastDFS介绍

廉价感情. 提交于 2019-12-01 23:04:41
1.什么是FastDFS FastDFS是用c语言编写的一款开源的分布式文件系统。FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。 FastDFS是一款开源的轻量级分布式文件系统纯C实现,支持Linux、FreeBSD等UNIX系统类google FS,不是通用的文件系统,只能通过专有API访问,目前提供了C、Java和PHP API为互联网应用量身定做,解决大容量文件存储问题,追求高性能和高扩展性FastDFS可以看做是基于文件的key value pair存储系统,称作分布式文件存储服务更为合适。 特别适合以中小文件( 建议范围: 4KB 到 500MB ) 为载体的在线服务, 如相册网站、 视频网站等等。 2.FastDFS架构 FastDFS架构包括 Tracker server和Storage server。客户端请求Tracker server进行文件上传、下载,通过Tracker server调度最终由Storage server完成文件上传和下载。Tracker server作用是负载均衡和调度,通过Tracker server在文件上传时可以根据一些策略找到Storage server提供文件上传服务

FastDFS安装 --> 测试

陌路散爱 提交于 2019-12-01 17:23:16
自己闲着没事,在小黑上虚拟了 4 个 centos 64 的系统,用来安装分布式 fastdfs 、 nginx 负载均衡,过程一路艰辛,搞了一个通宵都没弄好,终于在第二天的傍晚终于弄好了,记录一下过程。 有时候看书会犯糊涂,看完了都不知道将了啥,只有动手坐坐,啥玩意都明白差不多了。 有时候太懒了,哎,这是病,得治。 FastDFS安装 : FastDFS是一个国产开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件为载体的在线服务,如相册网站、视频网站等等.FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage).跟踪器主要做调度工作,在访问上起负载均衡的作用. 什么是FastDFS : FastDFS是一个国产开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件为载体的在线服务,如相册网站、视频网站等等. FastDFS原理 : 存储节点采用了分组(group)的方式。存储系统由一个或多个group组成,group与group之间的文件是相互独立的,所有group的文件容量累加就是整个存储系统中的文件容量