4 ms·
Go is a good alternative. It has support for smtp and data serialization formats. I highly recommend it. Using a single compiled binary for deployment will be a
by thefounder 4y ago
Go is a good alternative. It has support for smtp and data serialization formats. I highly recommend it. Using a single compiled binary for deployment will be a nice addition too. If you have patience to try it for 2-3 months you may fall in love with it.
- Arbortheus 4y agoOne of my favourite Go security features is the single binary output, it means I can build my binaries into a distroless base image container for running in K8S. It removes a huge attack and vulnerability surface that containers introduce. My team uses Go whereas the rest of the company heavily uses Python. Our vulnerability scanner tool detects hundreds of high score CVEs just in their container images. Comparably there have been times I haven’t updated our distroless base image for a year and there isn’t even a single vulnerability (this one: https://github.com/GoogleContainerTools/distroless/blob/main/base/README.md https://github.com/GoogleContainerTools/distroless/blob/main...) In terms of defending your software supply chain, eliminating the cruft that is required to run an interpreted language in a container make a a huge difference.
- doctor_eval 4y agoIronically the need to include a distro is true with Java as well. It’s not about running an interpreter so much as having your runtime living external to your code. Go has a runtime, of course, but it’s part of the binary.
- doctor_eval 4y agoI just want to second this. It takes time to love Go, but it’s worth the effort. Actually, the single binary alone is worth the effort. But it goes much deeper than that.