免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 5397 | 回复: 28
打印 上一主题 下一主题

[C++] Fiberized.IO与libevent性能对比 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-04-30 10:33 |只看该作者 |倒序浏览
本帖最后由 sqfasd 于 2015-05-06 13:46 编辑

同在单线程条件下,release版本Fibio与libevent下的qps差距在10%左右
测试代码,可以往后翻帖子
测试工具是ab

考虑到Fibio可轻松支持多线程,libevent就比较麻烦, 就没有测试多线程

看来Fibio还是挺牛B的

记得编译Fibio一定要release版本啊

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
2 [报告]
发表于 2015-04-30 11:00 |只看该作者
本帖最后由 yulihua49 于 2015-04-30 11:09 编辑

shouji de hanzi youwenti

both program is C++?
concuency level 100 is thread number?

论坛徽章:
0
3 [报告]
发表于 2015-04-30 11:09 来自手机 |只看该作者
我觉得服务器要想高性能,还是得用prefork/worker/callback
协程只是虚有其表

论坛徽章:
0
4 [报告]
发表于 2015-04-30 11:11 来自手机 |只看该作者
都是c++编译的,这不是关键,用c方式来链接libevent也不会更高

论坛徽章:
0
5 [报告]
发表于 2015-04-30 11:27 来自手机 |只看该作者
另外,单提供一个协程核心框架也没意义,要配套提供大量的网络服务的客户端库才实用
如果是基于回调的,那第三方的客户端就很容易集成进去
看看nginx和nodejs的选择,简洁高效
反观go和erlang,在调度上下了多大功夫

论坛徽章:
44
15-16赛季CBA联赛之浙江
日期:2021-10-11 02:03:59程序设计版块每日发帖之星
日期:2016-07-02 06:20:0015-16赛季CBA联赛之新疆
日期:2016-04-25 10:55:452016科比退役纪念章
日期:2016-04-23 00:51:2315-16赛季CBA联赛之山东
日期:2016-04-17 12:00:2815-16赛季CBA联赛之福建
日期:2016-04-12 15:21:2915-16赛季CBA联赛之辽宁
日期:2016-03-24 21:38:2715-16赛季CBA联赛之福建
日期:2016-03-18 12:13:4015-16赛季CBA联赛之佛山
日期:2016-02-05 00:55:2015-16赛季CBA联赛之佛山
日期:2016-02-04 21:11:3615-16赛季CBA联赛之天津
日期:2016-11-02 00:33:1215-16赛季CBA联赛之浙江
日期:2017-01-13 01:31:49
6 [报告]
发表于 2015-04-30 13:23 |只看该作者
本帖最后由 windoze 于 2015-04-30 13:25 编辑

fibio对于没有keepalive头的HTTP请求使用短连接(这是符合HTTP/1.1协议的做法),所以每个请求都会新建一个TCP连接和一个新fiber。
不知道你的libevent程序是怎么实现的,但我猜应该是保持连接直到对端切断。

你给ab加一个"-k"参数再看看。


PS.你没有创建更多的worker thread,所以fibio这段程序其实也是单线程的。

论坛徽章:
44
15-16赛季CBA联赛之浙江
日期:2021-10-11 02:03:59程序设计版块每日发帖之星
日期:2016-07-02 06:20:0015-16赛季CBA联赛之新疆
日期:2016-04-25 10:55:452016科比退役纪念章
日期:2016-04-23 00:51:2315-16赛季CBA联赛之山东
日期:2016-04-17 12:00:2815-16赛季CBA联赛之福建
日期:2016-04-12 15:21:2915-16赛季CBA联赛之辽宁
日期:2016-03-24 21:38:2715-16赛季CBA联赛之福建
日期:2016-03-18 12:13:4015-16赛季CBA联赛之佛山
日期:2016-02-05 00:55:2015-16赛季CBA联赛之佛山
日期:2016-02-04 21:11:3615-16赛季CBA联赛之天津
日期:2016-11-02 00:33:1215-16赛季CBA联赛之浙江
日期:2017-01-13 01:31:49
7 [报告]
发表于 2015-04-30 13:31 |只看该作者
这是我在MBP 15(Early 2013)上测试的结果

  1. $ ab -k -c 100 -n 100000 127.0.0.1:23456/add/1/1
  2. This is ApacheBench, Version 2.3 <$Revision: 1604373 $>
  3. Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
  4. Licensed to The Apache Software Foundation, http://www.apache.org/

  5. Benchmarking 127.0.0.1 (be patient)
  6. Completed 10000 requests
  7. Completed 20000 requests
  8. Completed 30000 requests
  9. Completed 40000 requests
  10. Completed 50000 requests
  11. Completed 60000 requests
  12. Completed 70000 requests
  13. Completed 80000 requests
  14. Completed 90000 requests
  15. Completed 100000 requests
  16. Finished 100000 requests


  17. Server Software:        
  18. Server Hostname:        127.0.0.1
  19. Server Port:            23456

  20. Document Path:          /add/1/1
  21. Document Length:        1 bytes

  22. Concurrency Level:      100
  23. Time taken for tests:   3.155 seconds
  24. Complete requests:      100000
  25. Failed requests:        0
  26. Keep-Alive requests:    99063
  27. Total transferred:      8895315 bytes
  28. HTML transferred:       100000 bytes
  29. Requests per second:    31693.55 [#/sec] (mean)
  30. Time per request:       3.155 [ms] (mean)
  31. Time per request:       0.032 [ms] (mean, across all concurrent requests)
  32. Transfer rate:          2753.17 [Kbytes/sec] received

  33. Connection Times (ms)
  34.               min  mean[+/-sd] median   max
  35. Connect:        0    0   0.1      0       3
  36. Processing:     1    3   1.2      3      61
  37. Waiting:        1    3   1.2      3      61
  38. Total:          1    3   1.2      3      61

  39. Percentage of the requests served within a certain time (ms)
  40.   50%      3
  41.   66%      3
  42.   75%      3
  43.   80%      4
  44.   90%      4
  45.   95%      4
  46.   98%      4
  47.   99%      5
  48. 100%     61 (longest request)
复制代码

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
8 [报告]
发表于 2015-04-30 15:12 |只看该作者
[quote]sqfasd 鍙戣〃浜

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
9 [报告]
发表于 2015-04-30 15:13 |只看该作者
本帖最后由 yulihua49 于 2015-04-30 15:16 编辑

閹存垼绻曢弰锟界拋銈勮礋coroutine濮f攦allback鐟曚胶鐣濆ú浣

论坛徽章:
44
15-16赛季CBA联赛之浙江
日期:2021-10-11 02:03:59程序设计版块每日发帖之星
日期:2016-07-02 06:20:0015-16赛季CBA联赛之新疆
日期:2016-04-25 10:55:452016科比退役纪念章
日期:2016-04-23 00:51:2315-16赛季CBA联赛之山东
日期:2016-04-17 12:00:2815-16赛季CBA联赛之福建
日期:2016-04-12 15:21:2915-16赛季CBA联赛之辽宁
日期:2016-03-24 21:38:2715-16赛季CBA联赛之福建
日期:2016-03-18 12:13:4015-16赛季CBA联赛之佛山
日期:2016-02-05 00:55:2015-16赛季CBA联赛之佛山
日期:2016-02-04 21:11:3615-16赛季CBA联赛之天津
日期:2016-11-02 00:33:1215-16赛季CBA联赛之浙江
日期:2017-01-13 01:31:49
10 [报告]
发表于 2015-04-30 15:16 |只看该作者
回复 9# yulihua49

老大你发的这是什么鬼?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP