fastDFS图片下载问题,求教 5C

最近在看淘淘商城项目,用fastDFS进行图片上传,上传的时候是tracker找一台空闲的storage进行图片上传返回上传路径,问题在下载的时候,为什么不能直接拿着路径下载,而是需要继续访问tracker看哪台storage空闲,问题是上传的storage是固定的啊,只是在那一组storage上有图,而一组storage的ip地址是一样的,那个tracker返回的信息只可能是那一组有图片的storage的IP地址以及图片路径,问题是这些我在上传的时候都获取到了啊,为什么下载的时候还要再次获取

2个回答

我们之前项目文件服务器采用的就是fastdfs,这是一个很老的文件服务器,当时选型的时候看中了Fastdfs的扩展能力和稳定性。其实你想的是对的,下载的时候只需要根据groupId+path就可以获得,因为fastdfs是一个分布式集群,只有tracker上知道下面storage的分布情况(是否存在副本,哪些是alive),tracker根据地址并根据下面storage上报的服务器信息,再返回给客户端,客户端在发起请求到具体的storage上下载文件。在这里是可以加上缓存提高查询效率。

weixin_45631403
weixin_45631403 下载不用获取,如果你安装了fast-nginx模块,你可以访问任何一台storage都能访问到,会给你转到源文件
3 个月之前 回复
weixin_37893887
玄尺 回复qq_33355821: 是的,fastdfs支持多副本,这就是高可用了。所以需要去请求tracker,让他告诉我们当前可用、性能最好的storage是谁,然后我们再去请求相应的storage
一年多之前 回复
qq_33355821
宇文荒雪 也就是说我图片传到了第一组storage上,那么下载的时候只能返回第一组的storage给我,只是第一组内可能不同的备份服务器是吧
一年多之前 回复

tracker就是负载均衡的作用,storage上传的时候group备份。如果按上传路径访问,可能某个storage压力会很大。好像nginx模块的说过,只有备份找不到时,才会从上传路径下载

qq_33355821
宇文荒雪 好滴
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问