Techempower benchmarks

This article here should prove a lot more interesting for a benchmark

Also the article is discussed here https://news.ycombinator.com/item?id=19089389 and here https://lobste.rs/s/hhfvwy/benchmarking_go_vs_node_vs_elixir

1 Like

Synthetic benchmarks like these are almost useless.

Unless you’re just serving up static content (and if you are, why use Elixir?), the raw server speed is not really important, since the determining factor for your app performance (speed and scalability both) will be your custom app code, not the framework itself.

1 Like

@mikl don’t agree with this point of view.

If we take ruby on rails for example as a framework then as a developer you spend a lot of time at tuning your app to be fast then on adding more features.

So a benchmark may be a good thing to see what to expected in different scenarios from your chosen framework.

Also I am sure that you are not going to rewrite the framework that you are currently using, so you will be bound by it’s limitations

@wolfiton, I guess that @mikl’s point is that this type of benchmark is kind of useless because they do not reflect real life use cases, but there are benchmarks that help indeed.

IMO, the only reason I think we should pay attention to those benchmarks and how Elixir goes on it, is that a LOT of people do care about them, so going bad on them is bad for Elixir’s image.

I agree they do not represent the reality, but the bad news is that these people really think they do, and some of them are really loud.

2 Likes

I would love to see other frameworks/languages put together meaningful tests/benchmarks such as the Phoenix test where Chris and co managed to get 2 million connections on a single server :003:

Perhaps someone could compile a list of such tests… surely Phoenix isn’t the only framework that has put this to the test?

Not trying to say performance doesn’t matter (it does, for sure), but just that these benchmarks don’t necessarily provide a lot of useful information about how a real-world app built with these tools would perform.

Just because a tool can deliver “hello world” to hundreds of thousands of concurrent users doesn’t mean it’ll still be fast once you’ve built an app on top of it.

2 Likes

I agree with this point of view.

1 Like

If you compare Phoenix with Hapi instead of the micro frameworks like Express or Koa or the vanilla Node, the results will be very different.

Phoenix beats it in 5 out of 6 tests.

Even Hapi isn’t a fullstack framework like Phoenix, as it’s classified as Micro framework at the website (correct me if I’m wrong).
If you benchmark Phoenix against Sails.js (which is a fullstack Rails like framework), that will show even poorer performance. I remember it did. Sails.js isn’t part of Techempower benchmarks anymore. Looks like the core team of Sails.js requested them to remove it from the benchmarks.

Also, micro-benchmarks aren’t the true representation of the real world situation.

1 Like

God help you if you ever have to deal with a significant Hapi upgrade…

3 Likes

Ah - my bad :confused: I’m sorry…

And thanks again for the link. I hadn’t seen those docs :slight_smile:

Of course one should also consider things like that while choosing a technology, than thinking about only the performance.