C++11 网络库 handy

码农软件 · 软件分类 · 网络工具包 · 2019-02-26 22:44:29

软件介绍

handy

a HANDY network C++11 libray on linux.

reactor 模式

支持优雅退出

无锁日志系统,按时间间隔轮替

代码简短

参考muduo的实现,采用C++11简化代码

ubuntu14 64位/g++ 4.8.1上通过测试

性能

handy的http服务器性能对比

对比了libevent2.0.21的test下http_bench以及nginx的性能

测试环境为thinkpad t420笔记本上的ubuntu14 64位虚机

nginx使用agentzh的echo模块

worker_processes=1

location /hello {

echo "hello world!"

}

http_bench为默认参数

handy使用的程序为example下的http-echo

其中nginx的qps较低,主要原因为nginx的响应内容较多,包括了多个header,并且使用chunk编码

handy和libevent的性能不相上下

单机千万并发连接测试

安装

make

examples

#include <handy/handy.h>
using namespace handy;

int main(int argc, const char* argv[]) {
    EventBase base;
    Signal::signal(SIGINT, [&]{ base.exit(); });
    TcpServerPtr svr = TcpServer::startServer(&base, "", 99);
    exitif(svr == NULL, "start tcp server failed");
    svr->onConnRead([](const TcpConnPtr& con) {
        con->send(con->getInput());
    });
    base.loop();
}

本文地址:https://codercto.com/soft/d/211.html

人工智能

人工智能

Peter Norvig、Stuart Russell / 姜哲 / 人民邮电出版社 / 2004-6 / 85.00元

《人工智能:一种现代方法》(第2版中文版)以详尽和丰富的资料,从理性智能体的角度,全面阐述了人工智能领域的核心内容,并深入介绍了各个主要的研究方向,是一本难得的综合性教材。全书分为八大部分:第一部分“人工智能” ,第二部分“问题求解” ,第三部分“ 知识与推理” ,第四部分“规划” ,第五部分“不确定知识与推理” ,第六部分“学习” ,第七部分“通讯、感知与行动” ,第八部分“ 结论” 。一起来看看 《人工智能》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

随机密码生成器
随机密码生成器

多种字符组合密码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具