1. gorilla 虽然不维护了,但是生产被用了那么多,已经足够稳定,可以继续使用,从另一个角度讲,人家足够稳定没有必要继续维护了,凭什么就不能用了
2. 基于 gorilla 的 melody 接口设计比较不错,推荐
3. gorilla 虽然不错,但性能一般,而且需要类似 melody 那种做些额外的封装,比如广播场景需要单独的写协程、否则遇到单个 conn 阻塞可能导致其他 conn 被卡
4. fasthttp/websocket 在 gorilla 基础上改造,性能也一般
推荐下我自己的吧:
https://github.com/lesismal/nbio1. 可以直接基于标准库 http 的框架之上使用、性能好于 gorilla ;
2. 可以使用 nbio 自带的 poller 作为网络异步 io ,能够支持海量并发比如百万连接,而其他基于标准库阻塞 io 接口的框架连接数太多时协程数量太大,内存容易 oom ,gc 容易卡顿;
3. 支持多种 io 模式,IOModMixed 模式下能够同步阻塞 io 与异步非阻塞 io 共用,新连接到来时根据当前在线量是否在设置的阈值以内,低于阈值使用标准库的同步阻塞 io 接口获得更高性能,高于阈值使用 nbio 的异步非阻塞 io 、协程数量最高占用配置的数量、动态退出,协程数量、内存各项占用均衡稳定
4. 不需要额外封装读写协程,只需要设置好 OnOpen/OnClose/OnMessage/KeepaliveTime 等用户需要的参数,用户专心处理业务逻辑
@
0o0O0o0O0o @
learningman 欢迎也来瞧瞧。gws 比较新、我也有提 issue 可以看下