Chisle
The coding-agent plugin that bills 52% of a bare model across 20 live tasks. Terse persona + tool-output compressor + context diet.
翻訳待ち
Pure Go 1000k+ connections solution, support tls/http1.x/websocket and basically compatible with net/http, with high-performance and low memory cost, non-blocking, event-driven, easy-to-use.
翻訳待ち
開発ツールGo · ShellGitHub @lesismal自分でインストール所有者未確認
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗I recently built a new Go networking library, fib (Fast In Balance), together with Claude. It is the successor to nbio: it keeps nbio's strength for massive numbers of connections and removes its weaknesses, so nbio is now in maintenance mode and will see little further development. If you are interested, please try fib.
fib is an event-driven networking library covering TCP, UDP and Unix sockets, TLS, HTTP/1.x, HTTP/2, HTTP/3 over QUIC, and WebSocket. A few event loops wait for I/O readiness and a shared worker pool does the work, so an idle connection costs no goroutine. Where fib is stronger than nbio:
net/http programming model. HTTP handlers take a standard *http.Request and an http.ResponseWriter, so net/http handlers, http.ServeMux, http.FileServer, chi, gorilla/mux and gin run on fib unchanged, over HTTP/1.x, HTTP/2 and HTTP/3.Documentation:
Based on years of development and testing of nbio, I have drawn some conclusions:
For massive connection scenarios, combined with memory pools and goroutine pools, it can effectively reduce the number of goroutines and objects, thereby lowering memory consumption and GC pressure, avoiding OOM and significant STW. For example, in a million WebSocket 1k payload echo test, nbio can maintain memory at 1GB with 100k TPS.
For regular connection scenarios, nbio's performance is inferior to the standard library due to goroutine affinity, lower buffer reuse rate for individual connections, and variable escape issues.
The vast majority of business scenarios using Golang do not require support for massive connections. The few scenarios that do require massive connections are mostly infrastructure such as gateways and proxies, and these types of infrastructure have higher requirements for performance and hardware resource overhead, where C/C++/Rust are more suitable.
Therefore, the scenarios where nbio can demonstrate its advantages are very limited.
I recommend:
While gorilla/websocket is mature and stable, its default ReadMessage performance is poor, and it requires additional encapsulation for reading and writing to avoid consistency issues, concurrent timing problems, and the issue where a single connection's write blocking in broadcast scenarios causes other connections to wait.
This is the beginning of the README. Read the rest at the original. Read the full README ↗