Re:Open-sourcing a 10x reduction in Apache Cassandra tail la...
by nvarsj on Tuesday March 06, 2018 @06:07AM
(#16528118)
Go is a much better choice for systems work. Largely because the GC has a low pause (sub ms) target. I'd still be hesitant to use it for very latency sensitive things, or memory intensive applications. Prometheus, for example, has struggled with golang's memory management (bad memory fragmentation, wasteful memory usage). But I think it's a great compromise if you don't want to deal with memory management.
Re:Open-sourcing a 10x reduction in Apache Cassandra tail la...
by manigandham on Tuesday March 06, 2018 @06:10AM
(#16528126)
Sure, I would also .NET/C# to the list now.
.NET Core on Linux is very fast and there are some great developments around fast low-level (yet managed) managed memory manipulation that can lead to some very fast software.
If you were starting a database-focused company from the beginning than choosing C++ is a better decision, which is exactly what ScyllaDB has done with their cassandra clone. Along with general algorithm and decision improvements, it'll provide 10-100x the same performance at lower latency on the same server.
We're also starting to see more projects written in Go now, which is still a managed runtime but usually better at handling these kinds of low-level systems.