测试中碰到的问题:下载不成功

发布于 2022-09-18 02:32:24 字数 324 浏览 9 评论 0

50个线程,35个线程不间断上传返回的文件名放在内存的列表中,15线程随机从内存的列表获取文件名不间断下载,运行一段时候后monitor会发现有些下载不成功,查看日志报错如下:
[2009-08-25 18:01:45] ERROR - file: storage_service.c, line: 2009, call stat fail, file: /home/fastdfs/storage/data/00/00/fmSpwEqSzNoAAAAAAAAUAEKVbmk38.txt, error no: 2, error info: No such file or directory
请问这个问题是什么原因造成的?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

陌上芳菲 2022-09-25 02:32:24

storage server不止1台吧?
貌似文件还没有同步过来,你就去下载文件了。
正确的做法,每次下载文件前,都去询问tracker server,获得可供下载的storage server,然后再到该storage server下载文件。

网白 2022-09-25 02:32:24

但是按照上次msn上和你交流的情况:上传文件后如果立即下载,是在tracker一端根据时间戳来判断的,如果要下载文件的时间比storage的最近时间戳要新,则从源上下载.所以按照我的理解如果上传文件后,虽然没有同步过来,但还是会从源上下载,所以不存在下载不成功的现象出现,除非我理解有误.望斑竹解释.

梦情居士 2022-09-25 02:32:24

的确是这样的。
下载文件过程,你是先查询tracker,获得可供下载的storage server,然后从该storage server下载文件的吗?

故人如初 2022-09-25 02:32:24

是的,就是这样做的.下载的文件名从上传的文件列表中随机获取.results[0], results[1],是随机获取的,代码如下:       

               TrackerClient trackerClient = new TrackerClient();                  
        Socket trackerSocket = trackerClient.getConnection();
                          
        StorageServer storageServer = null;
        StorageClient storageClient        = new StorageClient(trackerSocket,storageServer);
               
        NameValuePair[] metaList=null;
        String[] results;
        int errno;
                  
        storageClient.download_file(results[0], results[1]);

本宫微胖 2022-09-25 02:32:24

原帖由 zhouzezhong 于 2009-8-28 09:38 发表
是的,就是这样做的.下载的文件名从上传的文件列表中随机获取.results[0], results[1],是随机获取的,代码如下:       

               TrackerClient trackerClient = new TrackerClient();                  
        Socket trackerS ...

我用java写了个测试脚本,模拟LZ的测试情况,没有发现任何问题!
测试脚本参见附件。
运行测试脚本示例:
java -cp build/fastdfs_client.jar org.csource.fastdfs.TestLoad fdfs_client.conf

一片旧的回忆 2022-09-25 02:32:24

斑竹有msn ?,请加一下我,谢谢 reading_cool@msn.com

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文