3 ms·
I've had two servers I wrote in Go go into production (and a variety of command line tools, and a library used in other servers). Having code that is effectivel
by lanstin 5y ago
I've had two servers I wrote in Go go into production (and a variety of command line tools, and a library used in other servers). Having code that is effectively bug free is the norm. I think one time I had an FD leak that took a few days to show up (bad TCP connection state handling in my code, not really something that Rust would avoid, I guess), but every thing else was feature requests (and sometimes fixing bugs in the new feature's logic, but that's sort of different).
I wouldn't guess it's super fast, but the super-power of Go is you can use all those cores efficiently without getting dragged down and murdered by a lot of mutex/lock stuff, and it's efficient and fast with medium-high volumes (few K/second of messages per core, that sort of thing).
Both of those servers were left behind and maintained successfully by other people, so I don't think they are examples of a pile of tech debt. They are invisible network appliance type code, but customized to be super-precisely what was needed for specific network problems.
It is as fast to dev in as Python, lets me mix and match data structures and algorithms via problem-specific structs, and is able to use my hardware.