web2py comes with anyserver.py you just do:
python anyserver.py -H for help. One of the command line options is to run with gunicorn. You can try tornado, and any other server out there. On Sunday, 16 March 2014 17:09:40 UTC-5, horridohobbyist wrote: > > Failed to find application: 'gluon.main' > 2014-03-15 02:23:51 [22339] [INFO] Worker exiting (pid: 22339) > ... > Traceback (most recent call last): > File "/usr/local/bin/gunicorn", line 9, in <module> > load_entry_point('gunicorn==18.0', 'console_scripts', 'gunicorn')() > ... > gunicorn.errors.HaltServer: <HaltServer 'App failed to load.' 4> > > > > On Sunday, 16 March 2014 16:39:28 UTC-4, Michele Comitini wrote: >> >> You basically need to cd into the directory where you have unzipped >> web2py. Then run gunicorn like the following: >> gunicorn -w 4 gluon.main:wsgibase >> >> >> There you have web2py reachable on http://localhost:8000 >> >> Which part does not work for you? >> >> 2014-03-16 21:31 GMT+01:00 horridohobbyist <horrido...@gmail.com>: >> > Well, I managed to get gunicorn working in a roundabout way. Here are >> my >> > findings for the fred.py/hello.py test: >> > >> > Elapsed time: 0.028 >> > Elapsed time: 0.068 >> > >> > Basically, it's as fast as the command line test! >> > >> > I'm not sure this tells us much. Is it Apache's fault? Is it web2py's >> fault? >> > The test is run without the full web2py scaffolding. I don't know how >> to run >> > web2py on gunicorn, unless someone can tell me. >> > >> > >> > On Sunday, 16 March 2014 16:21:00 UTC-4, Michele Comitini wrote: >> >> >> >> gunicorn instructions: >> >> >> >> $ pip install gunicorn >> >> $ cd <root dir of web2py> >> >> $ gunicorn -w 4 gluon.main:wsgibase >> >> >> >> >> >> >> >> 2014-03-16 14:47 GMT+01:00 horridohobbyist <horrido...@gmail.com>: >> >> > I've conducted a test with Flask. >> >> > >> >> > fred.py is the command line program. >> >> > hello.py is the Flask program. >> >> > default.py is the Welcome controller. >> >> > testdata.txt is the test data. >> >> > shippackage.py is a required module. >> >> > >> >> > fred.py: >> >> > 0.024 second >> >> > 0.067 second >> >> > >> >> > hello.py: >> >> > 0.029 second >> >> > 0.073 second >> >> > >> >> > default.py: >> >> > 0.27 second >> >> > 0.78 second >> >> > >> >> > The Flask program is slightly slower than the command line. However, >> the >> >> > Welcome app is about 10x slower! >> >> > >> >> > Web2py is much, much slower than Flask. >> >> > >> >> > I conducted the test in a Parallels VM running Ubuntu Server 12.04 >> (1GB >> >> > memory allocated). I have a 2.5GHz dual-core Mac mini with 8GB. >> >> > >> >> > >> >> > I can't quite figure out how to use gunicom. >> >> > >> >> > >> >> > On Saturday, 15 March 2014 23:41:49 UTC-4, horridohobbyist wrote: >> >> >> >> >> >> I'll see what I can do. It will take time for me to learn how to >> use >> >> >> another framework. >> >> >> >> >> >> As for trying a different web server, my (production) Linux server >> is >> >> >> intimately reliant on Apache. I'd have to learn how to use another >> web >> >> >> server, and then try it in my Linux VM. >> >> >> >> >> >> >> >> >> On Saturday, 15 March 2014 22:45:27 UTC-4, Anthony wrote: >> >> >>> >> >> >>> Are you able to replicate the exact task in another web framework, >> >> >>> such >> >> >>> as Flask (with the same server setup)? >> >> >>> >> >> >>> On Saturday, March 15, 2014 10:34:56 PM UTC-4, horridohobbyist >> wrote: >> >> >>>> >> >> >>>> Well, putting back all my apps hasn't widened the discrepancy. So >> I >> >> >>>> don't know why my previous web2py installation was so slow. >> >> >>>> >> >> >>>> While the Welcome app with the calculations test shows a 2x >> >> >>>> discrepancy, >> >> >>>> the original app that initiated this thread now shows a 13x >> >> >>>> discrepancy >> >> >>>> instead of 100x. That's certainly an improvement, but it's still >> too >> >> >>>> slow. >> >> >>>> >> >> >>>> The size of the discrepancy depends on the code that is executed. >> >> >>>> Clearly, what I'm doing in the original app (performing >> permutations) >> >> >>>> is >> >> >>>> more demanding than mere arithmetical operations. Hence, 13x vs >> 2x. >> >> >>>> >> >> >>>> I anxiously await any resolution to this performance issue, >> whether >> >> >>>> it >> >> >>>> be in WSGI or in web2py. I'll check in on this thread >> periodically... >> >> >>>> >> >> >>>> >> >> >>>> On Saturday, 15 March 2014 16:19:12 UTC-4, horridohobbyist wrote: >> >> >>>>> >> >> >>>>> Interestingly, now that I've got a fresh install of web2py with >> only >> >> >>>>> the Welcome app, my Welcome vs command line test shows a >> consistent >> >> >>>>> 2x >> >> >>>>> discrepancy, just as you had observed. >> >> >>>>> >> >> >>>>> My next step is to gradually add back all the other apps I had >> in >> >> >>>>> web2py (I had 8 of them!) and see whether the discrepancy grows >> with >> >> >>>>> the >> >> >>>>> number of apps. That's the theory I'm working on. >> >> >>>>> >> >> >>>>> Yes, yes, I know, according to the Book, I shouldn't have so >> many >> >> >>>>> apps >> >> >>>>> installed in web2py. This apparently affects performance. But >> the >> >> >>>>> truth is, >> >> >>>>> most of those apps are hardly ever executed, so their existence >> >> >>>>> merely >> >> >>>>> represents a static overhead in web2py. In my mind, this >> shouldn't >> >> >>>>> widen the >> >> >>>>> discrepancy, but you never know. >> >> >>>>> >> >> >>>>> >> >> >>>>> On Saturday, 15 March 2014 11:19:06 UTC-4, Niphlod wrote: >> >> >>>>>> >> >> >>>>>> @mcm: you got me worried. Your test function was clocking a >> hell >> >> >>>>>> lower >> >> >>>>>> than the original script. But then I found out why; one order >> of >> >> >>>>>> magnitude >> >> >>>>>> less (5000 vs 50000). Once that was corrected, you got the >> exact >> >> >>>>>> same clock >> >> >>>>>> times as "my app" (i.e. function directly in the controller). I >> >> >>>>>> also >> >> >>>>>> stripped out the logging part making the app just return the >> result >> >> >>>>>> and no >> >> >>>>>> visible changes to the timings happened. >> >> >>>>>> >> >> >>>>>> @hh: glad at least we got some grounds to hold on. >> >> >>>>>> @mariano: compiled or not, it doesn't seem to "change" the >> mean. a >> >> >>>>>> compiled app has just lower variance. >> >> >>>>>> >> >> >>>>>> @all: jlundell definitively hit something. Times are much more >> >> >>>>>> lower >> >> >>>>>> when threads are 1. >> >> >>>>>> >> >> >>>>>> BTW: if I change "originalscript.py" to >> >> >>>>>> >> >> >>>>>> # -*- coding: utf-8 -*- >> >> >>>>>> import time >> >> >>>>>> import threading >> >> >>>>>> >> >> >>>>>> def test(): >> >> >>>>>> start = time.time() >> >> >>>>>> x = 0.0 >> >> >>>>>> for i in range(1,50000): >> >> >>>>>> x += (float(i+10)*(i+25)+175.0)/3.14 >> >> >>>>>> res = str(time.time()-start) >> >> >>>>>> print "elapsed time: "+ res + '\n' >> >> >>>>>> >> >> >>>>>> if __name__ == '__main__': >> >> >>>>>> t = threading.Thread(target=test) >> >> >>>>>> t.start() >> >> >>>>>> t.join() >> >> >>>>>> >> >> >>>>>> I'm getting really close timings to "wsgi environment, 1 thread >> >> >>>>>> only" >> >> >>>>>> tests, i.e. >> >> >>>>>> 0.23 min, 0.26 max, ~0.24 mean >> >> >>>>>> >> >> > -- >> >> > Resources: >> >> > - http://web2py.com >> >> > - http://web2py.com/book (Documentation) >> >> > - http://github.com/web2py/web2py (Source code) >> >> > - https://code.google.com/p/web2py/issues/list (Report Issues) >> >> > --- >> >> > You received this message because you are subscribed to the Google >> >> > Groups >> >> > "web2py-users" group. >> >> > To unsubscribe from this group and stop receiving emails from it, >> send >> >> > an >> >> > email to web2py+un...@googlegroups.com. >> >> > For more options, visit https://groups.google.com/d/optout. >> > >> > -- >> > Resources: >> > - http://web2py.com >> > - http://web2py.com/book (Documentation) >> > - http://github.com/web2py/web2py (Source code) >> > - https://code.google.com/p/web2py/issues/list (Report Issues) >> > --- >> > You received this message because you are subscribed to the Google >> Groups >> > "web2py-users" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> an >> > email to web2py+un...@googlegroups.com. >> > For more options, visit https://groups.google.com/d/optout. >> > -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.