编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

分布式图片服务器搭建(分布式服务器架构图)

wxchong 2024-08-19 23:55:08 开源技术 12 ℃ 0 评论

分布式图片服务器基于fastdfs和nginx来搭建的。

一、FastDFS是什么

FastDFS是一款开源的、分布式文件系统(Distributed File System), 由淘宝开发平台部资深架构师余庆开发。

FastDFS是通过纯C实现,只能够通过专有API访问,目前提供了C,Java和PHP API,解决大容量文件存储问题,追求高性能和高扩展性。

FastDFS的github:https://github.com/happyfish100

作者开发FastDFS的理念,最新的就是最好的,所以目前就只有最新的分支,没有多分支,最新分支向下兼容。FastDFS只能基于文件,不提供创建目录的操作。

二、FastDFS原理


1、客户端client 发起对 FastDFS 的文件传输动作,通过连接到某一台 Tracker Server 的指定端口来实现的;

2、Tracker Server 选择某台Storage Server 地址等信息返回给我。 client;

3、然后 client 再通过这些信息连接到这台Storage Server,将要上传的文件传送到给 Storage Server上。

三、FastDFS安装和配置

1、 libfastcommon的安装

libfastcommon为FastDFS操作的基础库,FastDFS没有使用标准的库,而是封装了一套和FastDFS相关的库。因为作者很自信自己封装的库,比libevent库实现得更加好,大家可以自行看github上的说明,然后去膜拜一下大神。

libfastcommon 的git下载地址:https://github.com/happyfish100/libfastcommon

tar -xzvf libfastcommon-1.0.46.zip

cd libfastcommon-1.0.46

./make.sh && make.sh install

export LD_LIBRARY_PATH=/usr/lib64/:$LD_LIBRARY_PATH

2、FastDFS的安装

tar -zvxf fastdfs-6.0.7.zip

cd fastdfs-6.0.7

./make.sh && ./make.sh install

3、FastDFS配置

tracker配置


storeage配置


client配置


四、启动fastdfs

fdfs_trackerd /etc/fdfs/tracker.conf

fdfs_storaged /etc/fdfs/storeage.conf

测试文件上传 fdfs_upload_file /etc/fdfs/client.conf /home/a.txt

返回待group的路径,则安装成功

五、nginx-1.10.1集成fastdfs

确保nginx基于源码安装OK。下载fastdfs-nginx-module_v1.16.tar.gz

tar -xzvf fastdfs-nginx-module_v1.16.tar.gz

cd nginx-1.10.1/

cp /usr/include/fastdfs/ /usr/local/include/ -R

cp /usr/include/fastcommon/ /usr/local/include/ -R

./configure --add-module=/usr/local/src/fastdfs-nginx-module/src

./make.sh && ./make.sh install

cp fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

修改fastdfs-nginx-module/src/mod_fastdfs.conf 将目录,IP等同storeage.conf保持一致

从fastdfs-5.05/conf/http.conf 拷贝到/etc/fdfs/下

从nginx-1.10.1/conf/mime.types 拷贝

到/etc/fdfs/

ln -s /usr/fastdfs/fastdfs0/data /usr/fastdfs/fastdfs0/data/M00

配置nginx

location /group1/M00 {

root /usr/fastdfs/fastdfs0/data;

ngx_fastdfs_module;

}

重启一下storeage和nginx

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

/usr/local/nginx/sbin/nginx -s reload

利用fdfs_upload_file上传一张图片,找到返回值

在浏览器访问:http://192.168.3.5/group1/M00/00/00/aKgfbVhnpGSANaaNAAFbrNW.jpg

此时分布式图片服务器搭建完毕

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表