evpp性能测试(2): 与Boost.Asio进行吞吐量对比测试

简介

Boost.Asio是用于网络和低层IO编程的跨平台C++库,为开发者提供了C++环境下稳定的异步编程模型。也是业内公认的优秀的C++网络库代表。一般来讲,其他的网络库的性能如果不能与asio做一下全面的对比和评测,就不能令人信服。

本次测试是参考陈硕的博客文章muduo 与 boost asio 吞吐量对比,该文章的结论是:muduo吞吐量平均比asio15% 以上。

我们之前做的https://github.com/Qihoo360/evpp与[moduo]吞吐量测试性能报告显示,https://github.com/Qihoo360/evpp与[moduo]吞吐量基本相当,各自都没有明显的优势。因此我们希望https://github.com/Qihoo360/evpp在与boost的性能对比测试中能够占优。

测试对象

  1. evpp-v0.2.4 based on libevent-2.0.21
  2. asio-1.10.8

测试环境

  1. Linux CentOS 6.2, 2.6.32-220.7.1.el6.x86_64
  2. Intel(R) Xeon(R) CPU E5-2630 v2 @ 2.60GHz
  3. gcc version 4.8.2 20140120 (Red Hat 4.8.2-15) (GCC)

测试方法

依据 boost.asio 性能测试 http://think-async.com/Asio/LinuxPerformanceImprovements 的办法,用 ping pong 协议来测试吞吐量。

简单地说,ping pong 协议是客户端和服务器都实现 echo 协议。当 TCP 连接建立时,客户端向服务器发送一些数据,服务器会 echo 回这些数据,然后客户端再 echo 回服务器。这些数据就会像乒乓球一样在客户端和服务器之间来回传送,直到有一方断开连接为止。这是用来测试吞吐量的常用办法。

evpp的测试代码在软件包内的路径为benchmark/throughput/evpp,代码如https://github.com/Qihoo360/evpp/tree/master/benchmark/throughput/evpp所示。并使用 tools目录下的benchmark-build.sh

asio的测试代码直接使用陈硕recipes</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值