gknet
1.0.0
这是一个用GO编写的网库,应用了受GNET启发的反应器图案。当然,GKNET Benift从Gnet那里得到了很多,但它也带来了新的东西。
go get -u github.com/moqsien/gknet@latest例子
执照
PANJF2000
实际上,GNET是一个非常出色的网络图书馆。但是创建GKNET的主要原因是,我发现为GNET应用程序实现优美的重新启动功能确实很难。 GNET应用了一个特殊的不可观的听众,但是没有标准库中的听众适配器。似乎实现优美重新启动的唯一方法是不安全的指针技巧,或者我们只需要在GNET项目下创建问题或拉动请求即可。
但是,我还注意到GNET本身不支持HTTP和TLS,作者安迪·潘(Andy Pan)最近没有计划实施TLS或可进口的侦听器支持。此外,GNET的代码设计最近成为多余的。因此,创建GKNET是利用GNET精心设计的部分,例如用户空间中的缓冲区,无锁队等等。
GKNET试图防止代码避免冗余,从标准库中调整侦听器,以及provie indentin HTTP以及TLS支持。更多的优化和功能正在途中: