In the age of microservices and networking in general, were D is at?
Jacob Carlborg
doob at me.com
Wed Sep 16 19:14:57 UTC 2020
On 2020-09-13 22:58, ryuukk_ wrote:
> Concerning vibe.d, i'm worried about the dependencies it pulls, also the
> benchmark:
> https://www.techempower.com/benchmarks/#section=data-r19&hw=ph&test=fortune&l=zijoc7-1r
I did some benchmark on some real world code at my previous work. We
compared the performance (number of requests per second) of an HTTP
endpoint. It fetched some data from a PostgreSQL database, did some
processing and returned the result as JSON.
We compared a highly optimized version implemented in Ruby, this was the
baseline. Then a colleague implemented a version in Go and I did an
implementation in D, using vibe.d .
The end result was that the Go version ran at 0.5x of the Ruby version
and the D version ran at 5x of the Ruby version. This was without trying
to optimize the code afterwards. Only some common sense while writing
the code, like if you can do it at compile time, do that. I'm pretty
sure I didn't even used LDC for an optimized build.
Of course, everyone at the company was only talking about how on earth
the Go version could be slower than the Ruby version. Someone later did
some improvements so that the Go version was up to the same speed as
Ruby. Nobody talked about how much faster the D version was, except me :( .
--
/Jacob Carlborg
More information about the Digitalmars-d
mailing list