当前位置:  软件>C/C++软件

高性能异步网络服务框架 libgod

    来源:    发布时间:2015-01-29

    本文导语:  libgod是一个事件触发的网络库,适用于windows、linux、bsd等多种平台,内部使用完成端口、epoll、kqueue等系统调用管理事件机制。整套库采用全异步机制,非常高效,但提供的接口确是同步的,所以使用起来非常简单。libgod致力...

libgod是一个事件触发的网络库,适用于windows、linux、bsd等多种平台,内部使用完成端口、epoll、kqueue等系统调用管理事件机制。整套库采用全异步机制,非常高效,但提供的接口确是同步的,所以使用起来非常简单。libgod致力于为游戏、云计算等高并发服务器提供一个高性能而且简单易用的底层。libgod在使用上可以做到跨平台,而且根据libgod官方网站上公布的数据统计,似乎也有着非凡的性能。God的意思是"神",意味着这套网络库强大,无所不能。

编译库代码,编译脚本会判断OS支持哪种类型的事件机制(完成端口、epoll或kqueue),然后条件编译相应代码,供上层使用的接口仍然是保持统一的(否则也不能所谓的跨平台了)。在ubuntu上编译相当容易,configure以后make,make install就可以了,windows上编译似乎有点小麻烦,不过稍微改点东西也就通过了。
从代码中看,libgod支持用户使用三种类型的事件,分别是网络IO、定时器、信号三种,在定时器的实现上使用了RB tree的数据结构,以达到高效查找、排序、删除定时器的目的,网络IO上,主要关注了一下linux上的epoll(因为目前的开发主要在linux平台)。

libgod把网络层和逻辑层分离,多线程,内存缓冲区管理等都由底层实现,上层应用只要专注写逻辑,所以使用libgod很容易就可以开发出一个高性能高并发的服务器。


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 高性能分布式哈希表FastDHT介绍及安装配置
  • 请推荐一下搭建高性能服务器框架的书籍或者资料
  • 高性能c++日志库 Easylogging++
  • 高性能计算软件工具包 DAKOTA
  • 高性能PHP框架 Phalcon
  • 高性能 HBase 客户端 Asynchronous HBase
  • 高性能List结构 MySKL
  • 高性能Linux内核 LinuxDNA
  • 高性能node.js开发框架 rrestjs
  • 高性能Java网络框架 MINA
  • Java的开源高性能memcached客户端 XMemcached
  • 高性能多核 BLAS 库 OpenBLAS
  • 高性能的http服务器 luahttpd
  • OpenCL中的高性能计算库 libcl
  • 高性能的STUN服务器 STUNMAN
  • MySQL 高性能存储引擎 TokuDB
  • 高性能Web服务器 Lighttpd
  • 高性能应用开发框架 POP-C++
  • 高性能图片服务器 NImg
  • 实战Nginx:取代Apache的高性能Web服务器
  • 高性能计算项目 Globus Toolkit


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3