一,关于FastDFS
FastDFS是用c语言编写的一款开源的分布式文件系统。FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
如上图,其中tracker并不保存实际的图片,而是起到一个协调的作用,具体的图片存储在storage里面。但我们页面上通过url读取图片的时候,我们读取的还是storager的地址,但是storager本身是不带http服务器功能的,所以,我们还需要使用nginx来作为我们的http服务器,我们再client才能通过url读到图片。
上传下载的流程:
上传:
客户端上传文件后存储服务器将文件ID返回给客户端,此文件ID用于以后访问该文件的索引信息。文件索引信息包括:组名,虚拟磁盘路径,数据两级目录,文件名。