前言
博主发现很多博文没有介绍开发者信息,本人习惯加上。FastDFS开发者为happyfish100(真名不清楚),目前在github上发布公开源码,地址为:https://github.com/happyfish100。本文用到的作者的作品有:
fastdfs、libfastcommon、fastdfs-nginx-module。
博主电脑是Manjaro 18.0.4 ,内核4.19.62-1-Manjaro。最近想要配置一个分布式的文件存储服务,相中了FastDFS,然而在网上找到的都是用CentOS或者Ubuntu的安装经验,没有Manjaro的,遂自行挖坑。
索性结局完美,经对比其他系统安装经验,发现Manjaro安装更简单些,因为不需要再额外导入任何的第三方依赖包!
FastDFS是用c语言编写的一款开源的分布式文件系统。FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
关于FastDFS的架构和能力介绍网上有很多,本文重点是安装测试,架构这里不再赘述。想要了解架构这方面概念的请先请参考:https://blog.youkuaiyun.com/kamroselee/article/details/80334621
准备
博主发现各大博文教程都是直接下载的FastDFS历史源码,然后做编译安装,这本身没毛病,但是这个方案当时可能可行,随着原项目开发人员的更新和迭代,如果按照固定地址下载源码的方式安装,某些部件可能已过时。尤其是博主自己安装的时候,总是发现libfastcommon这个官方必要的依赖库不可用。这个包和fastdfs版本是相对应的,在作者github中,fastdfs项目History文件上声明了:correct CRC32, you must upgrade libfastcommon to V1.38 or later,这导致博主在下载其他博主的libfastcommon时编译不通过。
博主推荐个不会随着时间流逝导致这篇博文过时的方式,原作者提供的也仅仅是源代码,需要编译,没有编译好的。
- 下载FastDFS最新源码:https://github.com/happy