curl-loader问题记录

2011-04-28  籽藤 

安装Curl-Loader

  1. 下载curl-loader(http://sourceforge.net/projects/curl-loader/files/)我下载的是最新版curl-loader-0.53.tar.bz2
  2. 解压curl-loader包。此时,curl-loader的目录中是没有curl-loader执行程序的,需要我们本地的gcc以及openssl库进行编译
  3. 用rpm -qa|grep ssl命令查看是否安装了openssl、openssl-dev两种库,若未安装,可在RHEL5安装盘内找到
  4. 在curl-loader目录中输入make命令,会产生一个名为curl-loader的可执行文件
你可能在输入make之后,不能顺利产生curl-loader文件【如图1】。很显然,这是没有gcc环境导致的。
 
OK,我们就是用这个curl-loader文件来进行性能测试。
 
使用Curl-Loader
  1. 我们创建appletest.conf文件置于conf-examples目录,文件内容可参照conf-examples中的配置文件。
  2. 在conf-examples终端输入命令../curl-loader -f appletest.conf【如图2】

如果输入命令之后,并没有“successfully added”,而是“already exists”【如图3】。那是appletest.conf文件定义的IP范围有问题,已经被占用了;调整一下conf文件的IP范围即可。
然而,如果输入命令../curl-loader -f appletest.conf后,报libcares.so.2的错【如图4】。那是你缺少了libcares.so.2包,要另外从网上下载(如,libcares2-1.5.1-3.1.i586.rpm)。
如果你在安装libcares2包时,出了问题【如图5】:
那就重新下载一个libcares2包吧,别纠结于rpmlib(PayloadlsLzma)了。
 
经过这么一番折腾,我还是没用上Curl-Loader,原因是执行../curl-loader -f appletest.conf的最后,显示【如图6】:
../curl-loader: symbol lookup error: ../curl-loader: undefined symbol: ares_library_init

    万能的google告诉我,ares_library_init是c-ares库中的方法。难道是curl-loader-0.53/build/c-ares/c-ares-1.7.4中ares_library_init文件的问题?还是说,我应该换一个版本的curl-Loader试试看?
====偶然间找到解决方案===========
因为上述错误是方法库未导入而导致的,无法识别ares_library_init。只需在curl-loader -f appletest.conf之前,输入导入命令:export LD_LIBRARY_PATH=/root/curl-loader-0.53/lib
--没错,ares_library_init是位于curl-loader-0.53/build/c-ares/c-ares-1.7.4中的,但是导入的是lib……
无论如何,“That did the trick!”可以用curl-loader做性能测试啦~ o(∩_∩)o 哈哈 
==================================
   
    唉,即将出差去折腾兼容性测试的项目,只得把Curl-Loader放一放~~希望能深入研究一下curl-Loader的源码。
    PS. 播布客(BooBooke.com)上的视频教程可以看看,挺不错的  
543°/5437 人阅读/0 条评论 发表评论

登录 后发表评论