Awesome-GitHub-Repo
Awesome-GitHub-Repo copied to clipboard
【项目自荐】高性能的TCP网络框架、支持TLS、可配置的路由、websocket、基于事件循环
-
项目地址:https://github.com/ikilobyte/netman
-
类别:Go
-
项目描述:
- 轻量的高性能TCP网络框架,基于epoll/kqueue,reactor模型实现
- 简单的API,细节在框架内部实现,几行代码即可构建高性能的Server
- 支持路由配置,更专注业务需求的处理,无需关心封包解包
- 支持自定义封包格式,更灵活
- 支持linux/macos,windows请在docker中运行
- 支持TLS
- 支持websocket
- 中间件
-
亮点:
- 非阻塞IO
- 底层基于事件循环,在net包中,一个连接需要一个goroutine去维持,但netman基于事件循环则不需要,大大减少了内存的占用,在大量连接的场景下更为明显
- 基于路由配置,业务层不关心封包解包的实现
- 全局中间件、分组中间件
- 经过测试在阿里云服务器(单机)上建立100万个连接(C1000K)的内存消耗在3.8GB左右