Live data from Hacker News

Web Framework Benchmarks Round 3

techempower.com

1–10 of 30 posts

Re: Web Framework Benchmarks Round 3

#2
I want to give a quick thank you to everyone who has contributed thus far. Being able to show frameworks that span this many different languages and platforms is really an amazing achievement that we only we able to accomplish with the help of the community. For the frameworks that are still missing, we're not done yet, continue submitting pull requests and we'll get them in.

Re: Web Framework Benchmarks Round 3

#3
This is the latest update to our benchmarking of web application frameworks and platforms. Since Round 2, we've had several pull requests. There is more Scala, Erlang, Lua, PHP, Java, Haskell, more everything! (Sorry, we've not yet received .NET/Mono pull requests.)

Additionally, with the help of the author of Wrk, we've been able to change the methodology to use time-limited tests (1 minute) rather than request-limited tests (100,000 requests). This means all frameworks are exercised for the same amount of time.

We've migrated the results to a stand-alone site so we have a little more screen real-estate for the charts and tables.

I look forward to any feedback, comments, questions, or criticism. Thanks!

Re: Web Framework Benchmarks Round 3

#4
post #2

I want to give a quick thank you to everyone who has contributed thus far. Being able to show frameworks that span this many different languages and platforms is really an amazing achievement that we only we able to accomplish with the help of the community. For the frameworks that are still missing, we're not done yet, continue submitting pull requests and we'll get them in.

It's great to see such positive attitudes towards the project, and of course even greater to see the healthy competition amongst frameworks and languages. I hope it continues!

Re: Web Framework Benchmarks Round 3

#8
post #7

Where is all the attention that happened for the first two rounds? (I'm really hoping someone will explain why Go's database results are so slow, and what can be done to improve that.)

The most likely cause is in the mysql driver. Go provides an interface for drivers to implement, similar to how JDBC does in Java. One of the go developers, Brad Fitzpatrick, commented [1] that the actual code used by the benchmark looks OK. The discussion of these test results on golang-nuts [1] triggered a number of performance related pull requests [2] to the mysql driver used.

Also of interest: https://code.google.com/p/go/issues/detail?id=5323

1: https://groups.google.com/forum/?fromgroups=#!topic/golang-n...

2: https://github.com/go-sql-driver/mysql/pull/52 https://github.com/go-sql-driver/mysql/pull/55

Re: Web Framework Benchmarks Round 3

#9
post #3

This is the latest update to our benchmarking of web application frameworks and platforms. Since Round 2, we've had several pull requests. There is more Scala, Erlang, Lua, PHP, Java, Haskell, more everything! (Sorry, we've not yet received .NET/Mono pull requests.) Additionally, with the help of the author of Wrk, we've been able to change the methodology to use time-limited tests (1 minute) rather than request-limi…

I know all languages are using mysql, but mysql drivers are pretty poor for languages such as 'go' and 'python'. So it does make it quite unbalanced. I'd love to see this with Postgres.

Re: Web Framework Benchmarks Round 3

#10
Thanks to techempower for putting this together. It's fantastic for me as the author of Phreeze to see how my framework stacks up, I've always been curious.

One strange thing is that Phreeze rocks on the multi-query test on the EC2 instance but on dedicated hardware does poorly. Would anyone have a clue why that would be? At the PHP level I have to admit I don't really factor in performance tuning for specific hardware - I was very surprised to see such a difference. I almost suspect the Nginx setup or something in the include path searching for too many files on one platform but not the other. Does anybody have any clues on where to look for something like that without having access to the testing hardware?

Post reply on HN