一个综合的分布式项目之性能测试

n72kimo 8年前

来自: http://my.oschina.net/shyloveliyi/blog/609972


    项目托管到gitlab其实和托管到github并无区别,和osc-git一样都是一个项目托管平台,gitlab适合那么想要代码知识产权不希望公开的公司使用,github大部分是歪果仁在玩,osc-git嘛,oscer都知道,不过osc-git好像支持运行代码并能访问,光这点就比较适合学习研究用。

    本项目代码在osc-git地址http://git.oschina.net/loveliyiyi/base

    好了,现在项目跑起来了,我们来测试一下,耗费了9台资源的系统到底有没有料,我们用http_load来做测试,我记得前面有说发表关于这个的博客(http://my.oschina.net/shyloveliyi/blog/487182),就不介绍了,直接进行测试,测试的url主要是注册和登录,所以urllist文件的内容就是

http://www.sustainable.com/sustainable-interactive/UserController/login.do?uname=admin&password=admin  http://www.sustainable.com/sustainable-interactive/UserController/regist.do?uname=sssssw&password=s

然后我们模拟10个用户,每个用户每秒进行1次登录或者注册,然后持续10分钟,以下是结果

599 fetches, 2 max parallel, 348806 bytes, in 600.001 seconds  582.314 mean bytes/connection  0.998331 fetches/sec, 581.342 bytes/sec  msecs/connect: 6.80302 mean, 1762.12 max, 0.786 min  msecs/first-response: 15.2024 mean, 273.656 max, 0.563 min  HTTP response codes:    code 200 -- 274    code 400 -- 325

code400的不用担心,那是我做了动静分离,有点问题加载不到静态文件。从结果看出总共访问599次,每秒相应0.998331次请求

现在我们加大测试力度,模拟100个用户,每个用户每秒进行10次登录或者注册,然后持续10分钟,以下是结果

5999 fetches, 7 max parallel, 3.69592e+06 bytes, in 600 seconds  616.089 mean bytes/connection  9.99833 fetches/sec, 6159.86 bytes/sec  msecs/connect: 2.90314 mean, 504.944 max, 0.497 min  msecs/first-response: 18.0851 mean, 606.681 max, 0.384 min  HTTP response codes:    code 200 -- 2970    code 400 -- 3029

从结果看出总共访问5999次,每秒相应9.99833次请求

虽然项目本身比较小,看不出什么结论性东西,但就总体来说响应速度和吞吐量在单台普通笔记本上还是达到了一个比较理想的状态。

至此这个综合的分布式项目全部完毕,在此基础上可以迭代出很多东西,代码我已经更新,在github上可以看到全部代码,有兴趣的自己fork

题外话:

为什么我的另一台电脑能跑8台虚拟机,不是配置强大,是内存比较大,本身是8G的,后来加了个4G的内存条。下面贴上两台计算机的配置

8台虚拟机的

开发的