Awesome-GitHub-Repo icon indicating copy to clipboard operation
Awesome-GitHub-Repo copied to clipboard

【项目自荐】高性能的TCP网络框架、支持TLS、可配置的路由、websocket、基于事件循环

Open ikilobyte opened this issue 2 years ago • 0 comments

  • 项目地址: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左右

ikilobyte avatar Jul 26 '22 10:07 ikilobyte