| From | Sent On | Attachments |
|---|---|---|
| Aleksandar Lazic | Apr 20, 2008 2:34 pm | |
| Bedros Hanounik | Apr 20, 2008 3:21 pm | |
| Manlio Perillo | Apr 20, 2008 3:26 pm | |
| Cliff Wells | Apr 20, 2008 3:34 pm | |
| Cliff Wells | Apr 20, 2008 3:38 pm | |
| Aleksandar Lazic | Apr 21, 2008 12:46 am | |
| Aleksandar Lazic | Apr 21, 2008 12:50 am | |
| Aleksandar Lazic | Apr 21, 2008 1:27 am | |
| Aleksandar Lazic | Apr 21, 2008 1:29 am | |
| Kiril Angov | Apr 21, 2008 7:47 pm | |
| Kiril Angov | Apr 21, 2008 7:48 pm | |
| Kiril Angov | Apr 21, 2008 7:57 pm | |
| Igor Sysoev | Apr 21, 2008 11:13 pm | |
| Marcin Kasperski | Apr 22, 2008 1:18 am | |
| Manlio Perillo | Apr 22, 2008 3:23 am | |
| Igor Sysoev | Apr 22, 2008 3:38 am | |
| Manlio Perillo | Apr 22, 2008 3:54 am | |
| Manlio Perillo | Apr 22, 2008 4:07 am | |
| Igor Sysoev | Apr 22, 2008 4:18 am | |
| Marcin Kasperski | Apr 22, 2008 5:05 am | |
| Manlio Perillo | Apr 22, 2008 6:18 am | |
| Manlio Perillo | Apr 22, 2008 6:50 am | |
| Igor Sysoev | Apr 22, 2008 7:10 am | |
| Manlio Perillo | Apr 22, 2008 7:30 am | |
| Kiril Angov | Apr 22, 2008 7:42 am | |
| Cliff Wells | Apr 22, 2008 12:24 pm | |
| Manlio Perillo | Apr 22, 2008 1:25 pm | |
| Manlio Perillo | Apr 22, 2008 1:27 pm | |
| Francisco Valladolid | Apr 22, 2008 2:12 pm | |
| Cliff Wells | Apr 22, 2008 2:43 pm | |
| Sean Allen | Apr 22, 2008 3:10 pm | |
| Jay Reitz | Apr 22, 2008 10:13 pm | |
| Aleksandar Lazic | Apr 22, 2008 11:06 pm | |
| Aleksandar Lazic | Apr 22, 2008 11:09 pm | |
| Aleksandar Lazic | Apr 22, 2008 11:18 pm | |
| Mike Crawford | Apr 25, 2008 2:02 pm | |
| Igor Sysoev | Apr 25, 2008 10:46 pm | |
| Aleksandar Lazic | Apr 25, 2008 10:56 pm | |
| Igor Sysoev | Apr 25, 2008 11:53 pm | |
| Manlio Perillo | Apr 26, 2008 2:59 am | |
| Igor Sysoev | Apr 26, 2008 3:22 am | |
| Manlio Perillo | Apr 26, 2008 3:45 am | |
| Manlio Perillo | Apr 26, 2008 4:24 am | |
| Manlio Perillo | Apr 26, 2008 7:37 am | .c |
| Manlio Perillo | Apr 26, 2008 8:28 am | |
| Igor Sysoev | Apr 26, 2008 8:57 am | |
| Adrian Perez | Apr 26, 2008 9:52 am | |
| Manlio Perillo | Apr 26, 2008 10:42 am | |
| Mike Crawford | Apr 28, 2008 8:05 am | |
| Adrian Perez | May 4, 2008 10:40 am |
| Subject: | Re: OT: 'best' dynamic language | |
|---|---|---|
| From: | Manlio Perillo (manl...@public.gmane.org) | |
| Date: | Apr 22, 2008 7:30:46 am | |
| List: | ru.sysoev.nginx | |
Marcin Kasperski ha scritto:
Regarding nginx support: currently I tend to believe that using nginx as reverse proxy (and static file server) may be the best runtime configuration....
The problem with reverse proxy is that you need another server,
FastCGI/SCGI/etc are also another server, just less explicit ;-)
Of course :)
and this server is usually written in Python, and most of the time it uses threads for concurrency,
If you are hardcore, you can use twisted. But IMO it is overkill for web.
By the way I'm a Twisted programmer :). This how I came to know and low asynchronous programming!
And I have also used Twisted Web (and Nevow) for a rather big web application.
However I think that Nginx + mod_wsgi + templating system like Mako produces applications that are more maintainable and modular.
Also, threads are not that bad in such context. Note that here you have non-trivial code, which makes some database operations, dynamically formats pages using templates, etc. The cost of some context switches is far less noticeable than in case of static file serving.
The problem is not with context switches, but with the Python Global Interpreter Lock.
1) Use Nginx as main server + reverse proxy 2) Run your application embedded in Apache or Nginx (but the application should be written with care)
I do not see any advantages of apache here (unless you want to use existing permissions, authorization etc infrastructure already defined for apache).
No, Apache *has* advantages. You have a very robust server for your application, and it's wsgi module allows much more control then any of the "custom" servers written in Python.
Manlio Perillo






.c