Django is not faster than web2py for "real world" applications, this
is my benchmark that proves it (in this particular case, YMMV):

django: Pycon Argentina 2009 site:
(based on pycon-tech, pycon 2010 us talk propossal/ site)
ab -n 100 http://pycon.sistemasagiles.com.ar/2009/about/
Requests per second:    23.13 [#/sec] (mean)
(it is the original server, then it has been moved to ar.pycon.org)

web2py: PyDay Buenos Aires 2010
(based on web2conf, pycon 2010 us registration site)
ab -n 100 http://www.pyday.com.ar/buenosbench/default/index
Requests per second:    24.53 [#/sec] (mean)

web2py app it is a striped down version to include only pycon-tech
"about page" exposed features ("wiki", with menu and sponsor logos).
web2py app doesn't uses cache and is not optimized (django one is, and
it is very very very very too much complicated than the web2py app)

exec vs import is not the most important issue (and I think it isn't
relevant at all in a full cost vs performance analysis, ROI as you say
in english).

The biggest performance penality of web2py I've found is the
filesystem access (looking for multiples .py files slow downs
requests/sec).
In this case (in my tests), each new db_*.py model has a performance
lost of ~ 5% to 10% .
Each directory scan has a 1% of performance loss.

I'm working in some optimizations for compiled apps (avoiding
directory scanning and saving codeobjects in memory improves a lot,
but has some drawbacks as all cache systems).
Maybe when we compile the app can make a sort of dispatcher that
already knows where the files are, so having to list directories is
not needed.

Anyway, we shouldn't have this kind of discussions on web2py-developers list?

When I have some time I'll fully publish this benchmark, just to
demythologize this issue ;-)
(the same for the table definition order, that is not really needed
-there are easy workarounds-)

Best regards,

Mariano Reingart
http://www.sistemasagiles.com.ar
http://reingart.blogspot.com

Reply via email to