Это сетевая библиотека, написанная в применении схема реактора, которая вдохновлена Gnet. Конечно, GKNET сильно бледует от Gnet, но также приносит что -то новое.
go get -u github.com/moqsien/gknet@latestпримеры
Лицензия
panjf2000
На самом деле Gnet - очень отличная сетевая библиотека, написанная в Go. Но главная причина создания GKET заключается в том, что я обнаружил, что действительно трудно реализовать грациозную функциональность для приложений GNET. Специальный не импортируемый слушатель применяется Gnet, но нет адаптера для слушателя из стандартной библиотеки. Похоже, что единственный способ достичь изящного переосмысления-это небезопасная трюк с указателем, или мы просто должны создать проблему или запрос на развлечение в рамках проекта Gnet.
Тем не менее, я также заметил, что сам GNET не поддерживает HTTP и TLS, и автор Энди Пан не имеет плана внедрения TLS или в последнее время импортируемой поддержки слушателей. Кроме того, дизайн кода для Gnet в последнее время становится как -то избыточным. Таким образом, GKNET создается, используя преимущества хорошо продуманной части Gnet, например, буферов в пространстве пользователя, без блокировки и т. Д.
Gknet пытается удержать код от избыточности, адаптировать слушателя из стандартной библиотеки, а также предварительно построен HTTP, а также поддержку TLS. Больше оптимизации и функциональности уже в пути: