Live data from Hacker News

Web Framework Benchmarks Round 2

techempower.com

221–230 of 241 posts

Re: Web Framework Benchmarks Round 2

#222
post #101
post #2

This is our first follow up to last week's web framework benchmarks. Since last week, we have received dozens of comments, thoughts, questions, criticisms, and most importantly pull requests. This post shows data collected from a second run on EC2 and i7 hardware that started on Tuesday of this week. A third round with even more community contribution is already underway. Thanks especially to those who have contribut…

Why no .NET C# and Mono?

In their previous test they said that it wasn't fair to test with C# on Mono as its not as performant as C# on windows.

Re: Web Framework Benchmarks Round 2

#223
post #94

Earlier quoted context omitted.

>what matters most to me is speed of development and whether or not I enjoy the process. Matters most? There are 100x differences here. Take two companies writing the same application, one in Spring the other in Rails. Both have easy access to knowledgable people, both are industry standard. However the Spring application would be several orders of magnitude more scalable[1]. I'd consider that to be a more important…

Performant, not scalable. You can throw money at Rails and it will handle the load, but it would cost a lot more.

Oh right, good point, I should have said performant.

Re: Web Framework Benchmarks Round 2

#225
Sequelize (used for the node-mysql tests) is the slowest ORM out for Node, others are much faster (i.e. the node-mysql module).

And I would love to see node-mongodb tests with the native Mongo driver and not with Mongoose (which is slower).

Re: Web Framework Benchmarks Round 2

#227
post #65

Earlier quoted context omitted.

Netty, gemini and servlet are all java server solutions without a thick framework layer getting in-between. What you can tell from these benchmarks in my opinion is that java (or rather the JVM) has the best "raw" performance. Frameworks introduce a slow-down factor on top of the raw platform, and different frameworks have different slow-down factors. You have to trade off developer productivity for performance when…

Gemini is a full-featured web framework. We've built it and maintain it internally. It offers caching (though not enabled for these tests), lightweight ORM, bunch of default handling methods and plenty of other features.

So you did all this to tell us indirectly that you have the best web framework in existence? ;)

Re: Web Framework Benchmarks Round 2

#228
post #215
post #184

Once again, the Node examples are wrong. - Unnecessary parsing. - Writing strings instead of buffers (they're copied, they aren't sent as-is). - Using async. It does a lot of really nasty things, most of which break V8 optimization best practices. This is a perf benchmark, not a comparison of how concise your code can be. - Having the main request handler in a gigantic function that will never be properly optimized b…

> when benchmarking against strongly typed compiled languages, performance concerns become important, even if you have to write ugly code That seems to defeat the purpose of benchmarking to begin with, or at least makes it less useful for real-world comparison.

It's already not an apples to apples comparison. For instance, what's in the Node examples is much the use of frameworks built to enable rapid prototyping, not built to handle the needs of performance-oriented services. So we're comparing some optimized systems designed to be used in production versus frameworks designed to be terse instead of performant.

Re: Web Framework Benchmarks Round 2

#229
post #226

Why are there no DB tests with Go?

Disappointing answer incoming: we haven't found the time. If you know Go sufficiently to write those tests (they should be fairly easy to write for someone who works with Go regularly), we'd be very happy to accept a pull request.

Also, just to reiterate something I've said elsewhere. We've done some spot testing with Go 1.1 and its performance is super. We really look forward to showing Round 3 numbers next week!

Re: Web Framework Benchmarks Round 2

#230
post #225

Sequelize (used for the node-mysql tests) is the slowest ORM out for Node, others are much faster (i.e. the node-mysql module). And I would love to see node-mongodb tests with the native Mongo driver and not with Mongoose (which is slower).

I know this will sound like a refrain, but would you be interested in preparing a test for Node that uses a better ORM? Or if you can demonstrate that another ORM would be clearly superior, perhaps it would make more sense to simply modify the existing Node test code, replacing Sequelize?
Post reply on HN