People have found lots of variability in performance with apache+mod_wsgi. 
Performance is very sensitive to memeory/etc.

This is because Apache is not async (like nginx) and it either uses threads 
or processes. Both have issues with Python. Threads slow you down because 
of the GIL. Parallel processes may consume lots of memory which may also 
cause performance issues. Things get worse and worse if processes hand 
(think of clients sending requests but not loading because of slow 
connections).

Apache is fine for static files. gunicorn and nginx are known to have much 
better performance with Pyhton web apps.

Massimo


On Monday, 17 March 2014 21:19:11 UTC-5, horridohobbyist wrote:
>
> I'm disturbed by the fact that the defaults are "sensible". That suggests 
> there is no way to improve the performance. A 2x-10x performance hit is 
> very serious.
>
> I was considering dropping Apache and going with nginx/gunicorn in my 
> Linux server, but I'm not sure that's a good idea. Apache is a nearly 
> universal web server and one cannot simply ignore it.
>
> Also, I'm not sure I can duplicate the functionality in my current Apache 
> setup in nginx/gunicorn.
>
>
> On Monday, 17 March 2014 21:15:12 UTC-4, Tim Richardson wrote:
>>
>>
>> (I am the furthest thing from being an Apache expert as you can find.)
>>
>>
>> Well, whereever that puts you, I'll be in shouting distance. 
>>
>> I guess this means you are using defaults. The defaults are sensible for 
>> small loads, so I don't think you would get better performance from 
>> tweaking. These default settings should set you up with 15 threads running 
>> under one process which for a small load should be optimal that is, it's as 
>> good as it's going to get. You get these sensible defaults if you used the 
>> deployment script mentioned in the web2py book (the settings are in the 
>> /etc/apache2/sites-available/default file)
>>  
>> threads are faster than processes, but gunicorn and nginx don't even use 
>> threads. They manage their workloads inside a single thread which makes 
>> them fast as long as nothing CPU intensive is happening. 
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> \
>>
>>>
>>> Thanks.
>>>
>>>
>>> On Monday, 17 March 2014 20:20:00 UTC-4, Tim Richardson wrote:
>>>>
>>>>
>>>>
>>>>> There is no question that the fault lies with Apache.
>>>>>
>>>>>
>>>> Perhaps it is fairer to say the fault lies with mod_wsgi ?
>>>>
>>>> What are the mod_wsgi settings in your apache config? 
>>>>
>>>>

-- 
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.

Reply via email to