关于分布式文件存储(fastdfs)

本文探讨了为何选择FastDFS集群解决大规模文件存储问题,详细介绍了FastDFS的工作原理,包括tracker与storage组件间的交互机制,以及如何通过Nginx解决高并发访问需求。

一、为什么要搭建fastdfs集群?

1、分布式文件存储就很多产品,现在这里用免费版的fastdfs,但是需要配置,就比较麻烦。有那种比较简单的也比较豪华的,拿来就直接使用,但是比较贵。

2、fastdfs是由c语言实现的开源轻量级分布式文件系统,解决了大数据存储和读写负载均衡等问题,适合存储4kb-500mb之间的小文件(图片,音视频文件等等),该软件的作者是阿里巴巴的大牛,叫庆余写的,开源免费的。

3、这里的实现方式:nginx和fastdfs

4、可以把图片或者音视频存储到fastdfs的服务器上,但是这个fastdfs服务器不提供web的http协议访问,所以这里还要用到nginx服务器(http协议),通过这个Nginx服务器把图片显示到前端页面。

5、在多个客户端上传或者下载图片存储服务器的时候,高并发的时候,10w个客户端同时请求,单机的存储服务器的io磁盘的能力是有限的,最快就100兆/s,就显得单机服务器应付不过来了。
在这里插入图片描述

6、所以现在就要把单机服务器改成多机,搭建一个集群,让集群去提供服务。
在这里插入图片描述
实在不行,再加缓存服务器,再不行就加限流,解决高并发问题。

二、讲解fastdfs实现原理

1、fastdfs分为两部分:tracker[ˈtrækə®](跟踪器)和storage[ˈstɔːrɪdʒ](存储)

2、storage定时向tracker上传自己的存储状态

3、用户访问首先请求的是track服务,track返回可用的storage的ip和端口,用户再根据ip和端口进行上传文件,最后storage返回路径和文件名

4、由于可以得出结论:计算机的所有难题,解决难题的都只有一个原则,就是建立一个中间层,就像这个tracker中间层一样。
在这里插入图片描述

三、大型的视频网站,则需要搭建tracker集群

1、单纯的电商系统,只需要搭建storage集群就够了。
即:1个tracker、1个nginx、多个storage!
这个配置比较简单!
在这里插入图片描述
2、但是如果像那种大型的视频网站(比如爱奇艺、优酷、抖音等),需要很多storage来存储文件,则要加配多个tracker,搭建tracker集群!

问题又来了!这里要对应多个tracker,这里只使用1个nginx代理http协议服务器是显然不够的。所以就要nginx服务器做tracker的负载均衡一个nginx负载3-4个tracker

当然配置这些东西远复杂的多,这里只是简单描述!
在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值