Techempower's benchmarks are a little out of there compared to real traffic patterns, but they're always fun to watch to see who gets ahead almost like a coding equivalent of a sports match.
Techempower in comparison to some other benchmarks are more tuned to web related workloads, so probably more interesting to us than who can walk a binary tree faster.
Some things to keep in mind though, firstly the json benchmarks are broken, I'm not quite sure *why*, but it might be because the fastest json algorithms involve code generation and Techempower doesn't currently take that into account, to my knowledge.
I'm also only going down to #50 with my commentary or we'll have a mountain of images, visit the site to see more details.
https://www.techempower.com/benchmarks/#section=data-r16&hw=ph&test=plaintext

Plaintext responses per second.
FastHTTP was leading here in the previous quarter, but then Actix came out of nowhere and narrowly beat it, it seems the Rust ecosystem has been busy. And who would have thought that Java would be so fast.
We also see signs of ASP.NET Core entering the Linux ecosystem here.

If we go down, we can find Python, Ruby and Lua.
Responses per second are cute, but what we really care about are database queries, first updates:

This time taking the lead is shocking enough... Java.
Is this really the same slow memory hog Java we've all come to know and love? Wow.
The PgSQL adapter for Go wasn't carefully optimised to be the fastest thing on earth like Fasthttp, but it's not too shabby, of course, I'm not surprised to see the usual culprits like C++ and Rust pulling ahead.
I also see signs of... Dart... there?

And what is that? Is that PHP? It looks like HHVM does fairly well for workloads which are nothing but blasting update queries, sadly it seems PHP support will be discontinued in favour of FB's own language, Hack.

In this test, a single row is loaded from the database and thrown into a response.
Java, C and C++ pull ahead, although FastHTTP does seem to be doing a fair bit better here.
One I'm surprised to see in the top 25 is Lua, how exciting.
I'm kinda surprised to see so little of Actix after their dramatic appearance in the plaintext section, but it seems the Rust Community haven't tuned their database adapters as well as they did that, but knowing them, I wouldn't be surprised to see them shooting up next quarter.

Mostly the same languages as with the previous bracket dominating the second section of the single query benchmarks.

Multiple queries per request which each fetch multiple rows from the database.
Java is still dominating, but I can see Actix somewhat regaining it's glory. Also, I see a new contender, Perl at #7. Fasthttp drops down to #13.

Dart has once again made an appearance, this is curious since the last I heard of Dart, Google were trying to push it as a JavaScript replacement and failed. Also, if we look down at the bottom, PHP makes a brief appearance, most likely due to it's optimised C stack.
I am very curious how PHP managed to accomplish that, as the stack is usually somewhere at the bottom, very curious. Plus, the numbers are all fairly close to each other.
Perhaps, the database stack is bottlenecking from large numbers of queries? Might be worth investigating.
Edit: Aha, they might have left a PHP process pinned to each process and reverse-proxied through Nginx to each listen for new requests and to immediately fire them off. That would make sense, perhaps they used the experimental event loop pecl extension with it? I dunno.
That was an interesting benchmark, but like always, in the real world, you're unlikely to get workloads and patterns quite like the ones seen in Techempower and far smarter strategies can be employed to make the most out of your platform rather than evening things out for a fair battleground.
Techempower in comparison to some other benchmarks are more tuned to web related workloads, so probably more interesting to us than who can walk a binary tree faster.
Some things to keep in mind though, firstly the json benchmarks are broken, I'm not quite sure *why*, but it might be because the fastest json algorithms involve code generation and Techempower doesn't currently take that into account, to my knowledge.
I'm also only going down to #50 with my commentary or we'll have a mountain of images, visit the site to see more details.
https://www.techempower.com/benchmarks/#section=data-r16&hw=ph&test=plaintext

Plaintext responses per second.
FastHTTP was leading here in the previous quarter, but then Actix came out of nowhere and narrowly beat it, it seems the Rust ecosystem has been busy. And who would have thought that Java would be so fast.
We also see signs of ASP.NET Core entering the Linux ecosystem here.

If we go down, we can find Python, Ruby and Lua.
Responses per second are cute, but what we really care about are database queries, first updates:

This time taking the lead is shocking enough... Java.
Is this really the same slow memory hog Java we've all come to know and love? Wow.
The PgSQL adapter for Go wasn't carefully optimised to be the fastest thing on earth like Fasthttp, but it's not too shabby, of course, I'm not surprised to see the usual culprits like C++ and Rust pulling ahead.
I also see signs of... Dart... there?

And what is that? Is that PHP? It looks like HHVM does fairly well for workloads which are nothing but blasting update queries, sadly it seems PHP support will be discontinued in favour of FB's own language, Hack.

In this test, a single row is loaded from the database and thrown into a response.
Java, C and C++ pull ahead, although FastHTTP does seem to be doing a fair bit better here.
One I'm surprised to see in the top 25 is Lua, how exciting.
I'm kinda surprised to see so little of Actix after their dramatic appearance in the plaintext section, but it seems the Rust Community haven't tuned their database adapters as well as they did that, but knowing them, I wouldn't be surprised to see them shooting up next quarter.

Mostly the same languages as with the previous bracket dominating the second section of the single query benchmarks.

Multiple queries per request which each fetch multiple rows from the database.
Java is still dominating, but I can see Actix somewhat regaining it's glory. Also, I see a new contender, Perl at #7. Fasthttp drops down to #13.

Dart has once again made an appearance, this is curious since the last I heard of Dart, Google were trying to push it as a JavaScript replacement and failed. Also, if we look down at the bottom, PHP makes a brief appearance, most likely due to it's optimised C stack.
I am very curious how PHP managed to accomplish that, as the stack is usually somewhere at the bottom, very curious. Plus, the numbers are all fairly close to each other.
Perhaps, the database stack is bottlenecking from large numbers of queries? Might be worth investigating.
Edit: Aha, they might have left a PHP process pinned to each process and reverse-proxied through Nginx to each listen for new requests and to immediately fire them off. That would make sense, perhaps they used the experimental event loop pecl extension with it? I dunno.
That was an interesting benchmark, but like always, in the real world, you're unlikely to get workloads and patterns quite like the ones seen in Techempower and far smarter strategies can be employed to make the most out of your platform rather than evening things out for a fair battleground.
Last edited:








