免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: happy_fish100
打印 上一主题 下一主题

[FastDFS] 测试方案及测试结果 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2009-12-16 14:10 |只看该作者

回复 #3 happy_fish100 的帖子

我也按照你的这个测试环境搭建了一个环境,我没用过c方面的,请问你这个test脚本该如何运行呢,等待...........................

make之后如下错误信息

dfs_func.c:73:65: 错误:宏“storage_upload_by_filebuff1”需要 10 个参数,但只给出了 9 个
dfs_func.c: In function ‘upload_file’:
dfs_func.c:72: 错误:‘storage_upload_by_filebuff1’ 未声明 (在此函数内第一次使用)
dfs_func.c:72: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
dfs_func.c:72: 错误:所在的函数内只报告一次。)
dfs_func.c: In function ‘download_file’:
dfs_func.c:112: 警告:传递参数 4 (属于 ‘storage_download_file_ex1’)时将指针赋给整数,未作类型转换
dfs_func.c:112: 警告:传递参数 5 (属于 ‘storage_download_file_ex1’)时将指针赋给整数,未作类型转换
dfs_func.c:112: 警告:传递参数 6 (属于 ‘storage_download_file_ex1’)时在不兼容的指针类型间转换
dfs_func.c:112: 错误:提供给函数 ‘storage_download_file_ex1’ 的实参太少
make: *** [dfs_func.o] 错误 1

[ 本帖最后由 njxuyj 于 2009-12-16 14:34 编辑 ]

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
12 [报告]
发表于 2009-12-16 16:01 |只看该作者

回复 #11 njxuyj 的帖子

下载最新版本V1.23进行测试吧。
原来版本的测试程序编译有问题。

论坛徽章:
0
13 [报告]
发表于 2009-12-16 17:16 |只看该作者

回复 #12 happy_fish100 的帖子

已经下了,编译都通过了.
命令 test_upload <process_index>
process_index这个代表什么意思?你举个例子我看看,感谢!命令如何用?
比如你说的开10个进程测试,怎么用?????

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
14 [报告]
发表于 2009-12-16 19:01 |只看该作者

回复 #13 njxuyj 的帖子

启动10个进程,后面的process index分别为0到9

论坛徽章:
0
15 [报告]
发表于 2009-12-17 09:36 |只看该作者

回复 #14 happy_fish100 的帖子

按照你的方法做了,现在出现如下错误:
[root@nn test]# ./test_upload   1
file:test_upload .c,line 328,getFIleContent 5K fail,errno:2,error info:No such file or directory.


我看了一下这个测试文件328行没什么东西啊,这是不是我文件路径不对还是什么原因啊,急...........................




自己看了你的程序,捣鼓一翻修改了一下
        {5 * 1024, "5K",        30000 / PROCESS_COUNT, 0, 0, 0, NULL},
修改为          {5 * 1024, "1.jpg",        30000 / PROCESS_COUNT, 0, 0, 0, NULL}, 这里1.jpg是我拷贝进来的一个文件

      
if (file_size != files.bytes)
                {
                        printf("file: "__FILE__", line: %d, "
                                "%s file size: %d != %d\n", __LINE__,
                                files.filename, (int)file_size, files.bytes);

                        return EINVAL;
                }

这段代码被我注释掉了


这样之后我起了10个upload进程,文件都上传上去了,但是屏幕还出现如下错误信息
[root@nn test]# ERROR - send data to storage server xxxxxxx:23000 fail,errno:14,error info:Bad address

这是什么原因啊?对测试结果有影响吗????????????????????









终于发现是什么问题了,是没先运行gen_file这个命令,现在一切正常了

[ 本帖最后由 njxuyj 于 2009-12-17 11:36 编辑 ]

论坛徽章:
0
16 [报告]
发表于 2009-12-23 09:02 |只看该作者

回复 #1 happy_fish100 的帖子

fish兄,对你的测试数据有点疑问如下
total_count=4221000,
119.42.240.98 1055253 1055253 30797 29 34.26 100.00
119.42.240.103 1055246 1055246 30144 28 35.01 100.00
119.42.240.99 1055262 1055262 29855 28 35.35 100.00
119.42.240.100 1055239 1055239 27368 25 38.56 100.00
按照上面的数据,你总的上传数据为4221000,存储分为两个组,每个组两台机器,(按照你的原理说每组里的数据是相同的),那么你任意一个组的容量就是单机的存储容量,这样的话,假如你98和103是一个组那么这组的总上传数量应该是105万左右,而不是两个机器上传数量的总和,这样话你的总上传数量就是210万左右,而不是你的四台机器上数量的总和total_count=4221000。不知道我的意思你有没有看明白????????????

[ 本帖最后由 njxuyj 于 2009-12-23 09:08 编辑 ]

论坛徽章:
0
17 [报告]
发表于 2009-12-23 10:45 |只看该作者
最近在做一个测试,测试结束后把所有资源集中下来测试下fastDFS。
到时候把同学的那两台服务器也借过来。
这样子大概是刀片服务器3台(八核,8G)+12核一台(20G)+16核一台(自带8*300Gscsi硬盘+raid卡)+20*300GFC硬盘的磁阵+24*300GFC硬盘的磁阵。
happy大大觉得这样子的环境用什么测试方案最合理?
我想使用iozone这个benchmark来测试。

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
18 [报告]
发表于 2009-12-27 19:40 |只看该作者

回复 #17 a7758526 的帖子

用FastDFS自带的测试程序吧。
因为FastDFS不是通用的文件系统,不能mount使用的。只能使用FastDFS自带的API对文件进行存取访问。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP