libgod 介绍
@H_502_1@
libGod是一个全异步+协程机制实现的网络库,适用于windows、linux、bsd等多种平台。内部使用IOCP、epoll、kqueue等系统调用管理事件机制,同时巧妙的利用协程,将复杂的异步逻辑转换为同步,使用起来非常简单。libGod致力于为游戏、云计算等高并发服务器提供一个高性能而且简单易用的底层,封装了多线程,IO,内存缓冲区等复杂逻辑,上层应用只要专注写逻辑,使用libGod很容易就可以开发出一个高性能高并发的服务器。 @H_502_1@
从2.0版本开始,有两个大的变化:@H_502_1@
- 为了加快开发进度,暂时去除了linux以外平台的支持,专注于linux平台的开发。
- 分出了单线程和多线程版本。我们专门针对单线程进行了特殊优化,调度性能比多线程版本高。单线程版还有一个很大的优势就是逻辑更简单了。现在很多系统的线程是抢占式的调度,访问共享资源就免不了加锁。协程是协作式调度,大部分情况下是不需要加锁的。而了解我们项目的应该都知道,libGod整个框架是基于协程驱动的。libGod多线程版虽然也是基于协程,但因为夹杂着多线程的抢占式调度,所以处处还是需要加锁。而单线程版就是单纯的协作式调度,所以绝大部分情况可以不用加锁。
libgod 官网
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。