教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 范文大全 > 文秘资料 >

fastdfs一些实际应用场景的问题

来源:网络收集 时间:2026-09-05
导读: fastdfs一些实际应用场景的问题 Q1、fastDFS是分组管理的,每个组存贮的数据一样,一个或者多个服务器组成的Tracker server可以控制多个组,组与组之间存贮的数据是不一样的。但是这个操作应该如何配置呢?我现在的Traker server 下面有控制了几台的Storage

fastdfs一些实际应用场景的问题


Q1、fastDFS是分组管理的,每个组存贮的数据一样,一个或者多个服务器组成的Tracker server可以控制多个组,组与组之间存贮的数据是不一样的。但是这个操作应该如何配置呢?我现在的Traker server 下面有控制了几台的Storage server 它配置是这样的:store_group=group2,如果我想把这个Tracker server 可控制多个组那么应该如何配置呢?是不是简单的store_group=group1就可以了?

A1: 在storage server上配置它要连接的tracker server,可以配置1个或多个。
组名在storage server上配置的。由storage server主动向tracker server报告其组名和存储空间等信息。


Q2、一些实际的问题:由于fastDFS的存贮特点,它组内的Store server 存贮的数据是一样的。那么如果我同组内的Store server 贮放的地方不一样,比如一台放在上海、一台放在广州、一台在深圳。我在存贮跟数据的时候它必须是要同步的,然后我存贮很大的数据或者并发有很多用户同时上传数据,那么各地方的数据同步肯定也就很大量了,如果机房是共享网络的时候,管理员看到你数据传输量那么大,把它的带宽都吃完了,那么肯定对我的服务器做限制或者什么的。我想问一下,如果是这种情况下,楼主有没有一些好的建议呢?或者能不能做得到每个Store server之间的同步能不能我设定一个时间来做呢?比如是深夜之类的?

A2: FastDFS早就支持同步时间段设置了。在storage.conf中设置参数sync_start_time和sync_end_time。


Q3、我想问一下,我怎看一台Store server 的硬盘存贮的大少呢?这样我才知道什么时候要加硬件了。还有一个问题,我看到一些DFS它的存贮是把一个数据来拆开存贮的,用户要下载的时候再把它结合在一起成了一个完整的文件下载,这样硬盘的利用就很高了,而且数据访问量也相对少很多。

A3: 直接使用FastDFS带的monitor程序:fdfs_monitor来查看storage状态。
文件分块存储会增加系统的复杂性。出于简洁考虑,FastDFS不支持文件分块存储。





------------------------------------------------------------------------------------------------
FastDFS注意事项
>>1.除了在storage.conf里的tracker_server增加tracker的ip和端口,其他地方要注意什么?
恩,tracker server ip和端口,肯定是要正确设置的。支持多tracker server,每行设置一个tracker。
另外,base_path也要正确设置。
其余参数,通常采用缺省配置即可。你可以看一下配置说明那个帖
子。

>>每台tracker和storage的启动有没有先后关系?
正常情况下,应该先启动tracker。
FastDFS不会有这样的要求,你要启动storage也是没有任何问题的。

>>2.想要把fastDFS产生的记录清空,再重新搭建一次,应该

fastdfs一些实际应用场景的问题

删除哪些文件?
停止storage server和tracker server,删除base_path下的data子目录即可。
注意:storage 的data目录下保存了上传文件,删除时请慎重。

>>>>[2010-12-15 15:51:35] ERROR - file: ../common/pthread_func.c, line: 163, create thread failed, startup threads: 2173, errno: 11, error info: Resource temporarily unavailable
最后这一行已经说明问题了,创建的线程太多,使用的资源已经达到系统上限。
解决方法:继续使用现有版本,调小max_connections这个参数,比如调整为1024。
另外一个方法,升级到2.x,比如2.05。2.x采用异步IO模型,可以使用有限的几个线程,支持大量的并发连接。
比如,线程数可以配置为4,支持的最大连接数可以配置为1024或者更高。
昨天看了代码发现程序会在启动服务的时候,会创建设置的连接数,用来检验服务器是否能够支持使用者设置的最大连接。

>>>>程序中要访问,比如上传文件,可以使用FastDFS提供的java API。
客户端通过HTTP下载文件时,可以走web server,如apache、nginx等。

>>>>请问通过http下载文件时,能否让下载的文件名称自动变成原文件名称?
可以使用文件附加属性来存储该文件的原文件名。在apache或nginx扩展模块中,可以在HTTP Header中输出原文件名。

>>1、简单看了下Java client的代码,看到可以通过client api获取上传文件的group name and filename,请问能否直接通过API获取http访问地址?
A: 生成http访问地址,没有提供现成的方法,但提供了示例代码,在TestClient1.java和TestClient.java中均有。摘录一下TestClient.java中的代码如下:
int ts;
String token;
String file_url;
InetSocketAddress inetSockAddr;

System.err.println("file_id: " + file_id);

inetSockAddr = trackerServer.getInetSocketAddress();
file_url = "http://" + inetSockAddr.getAddress().getHostAddress();
if (ClientGlobal.g_tracker_http_port != 80)
{
file_url += ":" + ClientGlobal.g_tracker_http_port;
}
file_url += "/" + file_id;
if (ClientGlobal.g_anti_steal_token)
{
ts = (int)(System.currentTimeMillis() / 1000);
token = ProtoCommon.getToken(file_id, ts, ClientGlobal.g_secret_key);
file
_url += "?token=" + token + "&ts=" + ts;
}
System.err.println("file url: " + file_url);


>>2、还有一个问

fastdfs一些实际应用场景的问题

题,每一个group是否存储了所有的上传文件;还是说group A存储一部分,group B存储一部分,同一个group中的storage server存储的文件都相同。
A: 答案为后者。即:group A存储一部分,group B存储一部分,同一个group中的storage server存储的文件都相同。

FastDFS存储服务器的硬盘可以做RAID,比如RAID5等等,这样系统中的mount point只有一个。
也可以单个硬盘直接mount使用,这样系统中的mount point就是多个(多个硬盘的情况下)。
RAID5并不能充分发挥各个磁盘的最大吞吐量,出于磁盘IO效率考虑,建议采用第二种做法,这样磁盘整体IO吞吐量最理想的情况下,为各个硬盘IO吞吐量之和。
采用多个mount point的情况下,如果有一块硬盘损坏,可以有两种修复方法:
1. 更换掉坏掉的硬盘,在服务停止的情况下,手工复制已有服务器上该路径的文件到该mount point,然后启动FastDFS服务程序fdfs_storaged;
2. 更换一台同样配置的新服务器,或者更换掉坏的硬盘后,重做系统,然后启动FastDFS服务fdfs_storaged即可。
只要${base_path}这个路径所在硬盘没有坏,也就是系统数据文件(如${base_path}/data/sync/*)都在的情况下,文件自动同步是没有任何问题的。

重新启动: root@ubuntu:/# /usr/local/bin/restart.sh /usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf

FastDFS系统中的文件ID与用户存储进去的逻辑文件是 …… 此处隐藏:7789字,全部文档内容请下载后查看。喜欢就下载吧 ……

fastdfs一些实际应用场景的问题.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/fanwen/1993852.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)