the-benchmarker / web-frameworks

Which is the fastest web framework?
MIT License
6.99k stars 666 forks source link

Add turbogears #1928

Open waghanza opened 5 years ago

waghanza commented 5 years ago

Hi @amol- @pedersen,

Would you mind to add (or consent that we add) turbogears in here ?

This project compare performance based on 3 routes :

Regards,

amol- commented 5 years ago

Well, I think it will be curious to see. So feel free to go for it.

A few possible hints:

But there are tons of questions that arise :P It's a bit hard to interpret the results and might give a false sense of reality to readers. In practice it's 90% testing the WSGI Application Server used and 10% the webframework.

If you don't expose which WSGI server was used the results are pretty pointless. Like japronto uses asyncio while falcon uses meinheld so it isn't really a comparison of the two frameworks themselves.

I think it would make sense to split the web frameworks in families, like it makes little sense to test japronto with flask or flask with Django.

You probably want a distinction between async and threaded frameworks. Using japronto for a CPU bound application would be a pretty bad choice even though it obviously would perform better than flask on this test because in this test the webapp does nothing and thus is very far from being a CPU bound case in any way.

Also you probably want a distinction between full stack frameworks and microframeworks. Comparing Django to Flask is pretty unfair, there are tons of middlewares and features enabled in Django by default compared to Flask and they have a pretty big cost.

Depending on what's the goal of this benchmarks, they might wrongly lead someone to switch to the wrong technology without fully understanding what's really going on or they could get a nearly equivalent improvement by disabling features in what they are already using.

waghanza commented 5 years ago

I think it would make sense to split the web frameworks in families

Totally, this is in the roadmap (at least mine) as well as tagging frameworks

The goal here are :