go-reuseport
reuse tcp/udp ports in golang (by libp2p)
debug
Fork of pkg/debug that adds some additional functionality. (by Binject)
Our great sponsors
go-reuseport | debug | |
---|---|---|
1 | 1 | |
733 | 115 | |
2.6% | 0.9% | |
5.0 | 0.6 | |
about 1 month ago | about 1 month ago | |
Go | Go | |
ISC License | BSD 3-clause "New" or "Revised" License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
go-reuseport
Posts with mentions or reviews of go-reuseport.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-22.
-
The Simplicity of Single-File Golang Deployments
Can't help with how to implement this, but just to be sure: You should be able to use the same port in multiple instances if you bind those with SO_REUSEPORT. A quick search points to https://github.com/libp2p/go-reuseport for an implementation. Now you just need a mechanism to drain the old process.
debug
Posts with mentions or reviews of debug.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-22.
-
The Simplicity of Single-File Golang Deployments
In the malware reverse engineering scene, there are a lot of forks of the upstream "debug" go library, because it allows loading, parsing, compiling and executing libraries from disk (rather than in-kernel or in-userspace).
And there's also "purego" as an implementation that directly generates shellcode.
Maybe those will help you, too?
I am just mentioning these because for my use cases those approaches worked perfectly, CGO free.
[1] https://github.com/Binject/debug
[2] https://github.com/ebitengine/purego
What are some alternatives?
When comparing go-reuseport and debug you can also consider the following projects:
bearclaw - tiny static site generator w/ rss
release.sh - 🚀 A simple bash script for building Go projects for multiple platforms 💻💾
executable-dist-plugin - A Gradle plugin which makes distribution zips runnable, as a sort of alternative to an uberjar. A London Beach production :guardsman::palm_tree:.
Quarkus - Quarkus: Supersonic Subatomic Java.
tableflip - Graceful process restarts in Go