一、关于FastDFS

1、FastDFS简介

FastDFS(Fast Distributed File System)是一个开源的分布式文件系统,旨在解决大规模文件存储和访问的问题,例如图片、音视频等。它具有高性能、高可靠性和可扩展性的特点,被广泛应用于大规模的互联网应用中。

FastDFS由跟踪服务器(Tracker Server)和存储服务器(Storage Server)组成。跟踪服务器负责跟踪存储服务器的状态和负载情况,存储服务器负责实际的文件存储和访问。

2、FastDFS安装环境概览

环境与依赖库:

名称 说明
centos 7.x
libfastcommon FastDFS分离出的公用函数库                V1.0.68
libserverframe FastDFS分离出的网络框架                    V1.1.28
FastDFS FastDFS主体程序                                   V6.9.5
fastdfs-nginx-module FastDFS和nginx的关联模块(解决http访问文件)
nginx 1.15.2
gcc-c++ C依赖环境(FastDFS 采用 C 语言开发)
libevent  FastDFS主体程序-依赖库

 

下载地址:

1
2
3
yum install gcc-c++
yum -y install libevent
wget https://github.com/happyfish100/libfastcommon/archive/refs/tags/V1.0.68.tar.gz<br>wget https://github.com/happyfish100/libserverframe/archive/refs/tags/V1.1.28.tar.gz<br>wget https://github.com/happyfish100/fastdfs/archive/refs/tags/V6.9.5.tar.gz

二、安装

1、gcc-c++ 安装

yum install gcc-c++

 

 

下载完后提示是否安装,选择:Y。安装成功出现:Complete!

2、libevent 安装

yum -y install libevent

安装成功出现:Complete!

3、libfastcommon 安装

 这里我放/home目录,安装以实际目录做调整

1
2
3
4
5
6
7
8
9
10
cd /home
## 下载
wget https://github.com/happyfish100/libfastcommon/archive/refs/tags/V1.0.68.tar.gz
## 解压
tar -zxvf V1.0.68.tar.gz
cd libfastcommon-1.0.68/
## 编译
./make.sh
## 安装
./make.sh install

4、libserverframe 安装

1
2
3
4
5
6
7
8
9
10
cd /home
## 下载
wget https://github.com/happyfish100/libserverframe/archive/refs/tags/V1.1.28.tar.gz
## 解压
tar -zxvf V1.1.28.tar.gz
cd libserverframe-1.1.28/
## 编译
./make.sh
## 安装
./make.sh install

5、FastDFS 安装

1
2
3
4
5
6
7
8
9
10
cd /home
## 下载
wget https://github.com/happyfish100/fastdfs/archive/refs/tags/V6.9.5.tar.gz
## 解压
tar -zxvf V6.9.5.tar.gz
cd fastdfs-6.9.5/
## 编译
./make.sh
## 安装
./make.sh install

安装成功后,/etc/fdfs/ 如下:

三、配置

1、创建存储目录相关路径

这里我还是放在/home目录,安装以实际目录做调整(文件夹用途:后续配置需要)

1
2
3
4
mkdir -p /home/fastdfs
mkdir -p /home/fastdfs/data
mkdir -p /home/fastdfs/tracker
mkdir -p /home/fastdfs/client

2、配置跟踪器(Tracker Server)

配置:

1
2
3
4
5
6
7
8
9
10
11
cd /etc/fdfs/
vim tracker.conf
 
#主要更改以下几个配置(其他详细参数可以自行查询资料)
 
#存储数据和日志文件的基本路径
base_path=/home/fastdfs/tracker
#Http服务端口(后续放开http访问需要)
http.server_port=80
#默认提供服务端口(可自行更改)
port=22122

 启动:

1
2
3
4
## 启动
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
## 查看状态
netstat -apn|grep fdfs

3、配置数据存储(Storage Server)

配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
cd /etc/fdfs/
vim storage.conf
 
#主要更改以下几个配置(其他详细参数可以自行查询资料)
 
## storage存储data和log的跟路径
base_path=/home/fastdfs/data
## 默认组名
group_name=group1
## 默认端口,相同组的storage端口号必须一致
port=23000
## 配置一个存储路径
store_path_count=1
store_path0=/home/fastdfs/data
## 配置跟踪器IP和端口
tracker_server=服务器外网IP:22122

启动:

1
2
3
4
5
6
7
8
9
10
11
## 启动
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
 
## 查看进程
netstat -apn|grep fdfs
 
## 查看启动日志
tail -f /home/fastdfs/data/logs/storaged.log
 
## 查看是否在通讯(正常能看到 ACTIVE 标识)
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf

4、配置客户端测试

 配置:

1
2
3
4
5
6
7
8
9
cd /etc/fdfs/
vim client.conf
 
#主要更改以下几个配置(其他详细参数可以自行查询资料)
 
## client数据和日志目录
base_path=/data/fastdfs/client
## 配置跟踪器IP和端口
tracker_server=服务器外网IP:22122

启动:

现在/home 目录下放一个图片,执行如下语句:

1
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /home/img1.png

返回如下信息(配置成功):

 走到这里基本上整个单服务器服务就搭建成功了,但是此时还无法http查看和下载。这里就需要借助fastdfs-nginx-module实现http查看。

四、配置nginx模块实现http方式打开、下载图片

1、相关依赖安装

1
2
3
4
5
6
7
8
## pcre-devel 环境
yum install -y pcre pcre-devel
## zlib-devel 环境
yum install -y zlib zlib-devel
## openssl-devel 环境
yum install -y openssl openssl-devel
## unzip 解压缩
yum install -y unzip zip

2、下载解压Nginx

1
2
3
cd /home
wget http://nginx.org/download/nginx-1.15.2.tar.gz
tar -zxvf nginx-1.15.2.tar.gz

3、下载解压Fast-Nginx

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
cd /home
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/refs/tags/V1.23.zip
mv V1.23.zip fast-nginx.zip
unzip fast-nginx.zip
 
## 安装完后需要把mod_fastdfs.conf拷贝到/etc/fdfs目录下
cp /home/fastdfs-nginx-module-1.23/src/mod_fastdfs.conf /etc/fdfs
 
## 对刚刚拷贝的mod_fastdfs.conf文件进行修改:
 
vim /etc/fdfs/mod_fastdfs.conf
 
## 主要关注以下配置
 
base_path=/home/fastdfs/data  #保存日志目录
tracker_server=服务器外网IP:22122 #tracker服务器的IP地址以及端口号
url_have_group_name = true #文件 url 中是否有 group
store_path0=/home/fastdfs/data   #存储路径

4、配置安装Nginx、Fast-Nginx

1
2
3
4
5
6
7
8
9
cd /home/nginx-1.15.2
## 注入配置
./configure --add-module=/home/fastdfs-nginx-module-1.23/src
## 编译并安装
make && make install
 
##复制http.conf和mime.types至 /etc/fdfs/目录
cp /home/fastdfs-6.9.5/conf/http.conf /etc/fdfs/
cp /home/fastdfs-6.9.5/conf/mime.types /etc/fdfs/

验证是否安装成功,执行下面命令,看注入地址是否成功。

1
/usr/local/nginx/sbin/nginx -V

配置Nginx代理地址

1
2
3
4
5
6
7
8
9
10
11
12
cd /usr/local/nginx/conf/
vim nginx.conf
 
## 配置内容如下(url_have_group_name = true为false的时候需要更改)
server {
    listen       80;
     
    location ~/group([0-9])/M00 {
        root /data/fastdfs/data;
        ngx_fastdfs_module;
    }
}

5、见证结束时刻

NGINX服务启动。

1
2
3
4
5
6
## 启动
/usr/local/nginx/sbin/nginx
## 停止
/usr/local/nginx/sbin/nginx -s stop
## 重启
/usr/local/nginx/sbin/nginx -s reload

访问方式:http://互联网Ip地址/group1/M00/00/00/CIbAYmStEtGAPx2FAAAtNms4POE783.png

 

posted @ 2023-07-11 16:34 Armys 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 执行以下语句 alter database 表名 set search_path to "$user", govengine, public, sys, sys_catalog, pg_catalog; $user 其中user可以替换为具体表名称 sys_开头的表会冲突 阅读全文
posted @ 2023-07-11 09:50 Armys 阅读(641) 评论(0) 推荐(0) 编辑
摘要: 一、错误分析 在VUE项目开发中,我们经常会遇到报错: Node Sass version 7.0.1 is incompatible with ^4.0.0。 网上解决方案也千奇百怪,最终操作下来,也是搞了个寂寞,项目依旧无法正常运行,通常这种情况普遍都是团队或者项目使用的NODE版本不一致。 二 阅读全文
posted @ 2022-12-20 11:36 Armys 阅读(4019) 评论(0) 推荐(1) 编辑
摘要: 销毁div重新渲染: $("#myChart").removeAttr("_echarts_instance_"); 或 $("#myChart").removeAttr("_echarts_instance_").empty(); 阅读全文
posted @ 2022-12-08 17:24 Armys 阅读(608) 评论(0) 推荐(0) 编辑
摘要: 找到安装路径: C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer 删除 GIT 文件夹 阅读全文
posted @ 2022-08-31 10:11 Armys 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 写在前面 时间真快,转眼又是新的一年。随着前后端技术的不断更新迭代,尤其是前端,在目前前后端分离开发模式这样的一个大环境下,交互性、兼容性等传统的开发模式已经显得有些吃力。之前一直用的是react,随着后面钩子的加入更让人爱不释手,但是整个团队需要更新技术,这里选择了更容易上手的Vue(这里的容易上 阅读全文
posted @ 2020-02-22 22:45 Armys 阅读(36064) 评论(12) 推荐(3) 编辑
摘要: npm WARN deprecated bfj-node4@5.3.1: Switch to the `bfj` package for fixes and new features! npm WARN deprecated nomnom@1.8.1: Package no longer suppo 阅读全文
posted @ 2019-03-04 11:27 Armys 阅读(8562) 评论(0) 推荐(1) 编辑
摘要: 按照上面文章配置完毕后,会发现有个问题,我登陆页面、注册页面是不需要视图页的。 开始配置路由 重新配置main.js 引入 更改启动项 改为APP启动 配置router/index.js 先引入视图页和404页 更改路由 思路就是把需要视图页的页面,把它们放在视图页下的子路由 404.vue 页面自 阅读全文
posted @ 2018-11-16 13:23 Armys 阅读(3480) 评论(0) 推荐(0) 编辑
摘要: Swagger注释不显示,只需要进入Startup.cs 找到: 更改为: 阅读全文
posted @ 2018-11-15 17:28 Armys 阅读(2664) 评论(3) 推荐(2) 编辑
摘要: 1、配置index.html 安装依赖字体图标 main.js引入: static 新增css文件夹,用来存放AdminLTE相关样式文件,结构如下: index.css 配置main.js index.html 配置body样式 layout文件夹新建 Header.vue 此时,Layout.v 阅读全文
posted @ 2018-11-14 11:44 Armys 阅读(5436) 评论(5) 推荐(0) 编辑
点击右上角即可分享
微信分享提示