通用C++网络库 Fiberized.IO

BSD
C/C++
跨平台
2014-11-25
Windoze

Fiberized.IO 是一个基于 Fiber 和 Async I/O 的通用 C++ 网络库。

在上层,Fiberized.IO 提供一个兼容 C++11 thread 和 iostream 的“阻塞式”API;在底层,Fiberized.IO 通过将阻塞式 IO 映射为异步 IO 和 kernel/userland 混合调度的 Fiber,在最大化程序的运行效率的同时保持用户的程序清晰简单易于理解。

除基本的功能之外,Fiberized.IO 还包含了一个完整的HTTP服务框架,一个 Redis 客户端,以及 Apache Thrift 的支持,未来计划支持常见的数据库如 MySQL 和 MongoDB 等。

一个 HTTP 服务器示例代码:

#include <fibio/fiberize.hpp>
#include <fibio/http_server.hpp>

using namespace fibio::http;

bool handler(server::request &req,
             server::response &resp)
{
    resp.body_stream() << "<HTML><BODY><H1>"
                       << req.params["p"]
                       << "</H1></BODY></HTML>"
                       << std::endl;
    return true;
}

int fibio::main(int argc, char *argv[]) {
    server svr(server::settings{
        route(path_("/*p") >> handler),
        23456,
    });
    svr.start();
    svr.join();
}
的码云指数为
超过 的项目
加载中

评论(3)

sinopf
sinopf
以后写游戏服务器,只需要关系业务逻辑了。。。 Fiberized.IO
Injection
Injection
好库,必火 Fiberized.IO

暂无资讯

暂无问答

2014年国人开发的最热门的开源软件TOP 100

不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必。做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软...

2016/03/11 15:50
405
1
Proactor模式&Reactor模式详解

服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型。 (2)同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非...

2016/09/08 14:16
209
0
同步 异步 阻塞 非阻塞

同步和异步的差别,阻塞和非阻塞的差异,说明如何去理解他们,AIO,NIO,BIO

2015/03/21 03:33
344
0
Linux 异步IO

io_submit、io_setup和io_getevents示例 [摘要:注:本宣布正在 io_submit、io_setup战io_getevents战LINUX上的AIO体系挪用。那有一个特别很是迥殊注重的中央——传送给io_setup的aio_conte...

2016/11/26 20:17
23
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部