[Python-Dev] GIL, Python 3, and MP vs. UP
Phillip J. Eby
pje at telecommunity.com
Thu Sep 22 21:58:17 CEST 2005
At 08:42 PM 9/22/2005 +0200, Fredrik Lundh wrote:
>Phillip J. Eby wrote:
> >At 10:27 AM 9/22/2005 +0400, Sokolov Yura wrote:
> >>It is so simple to write application server in Python.
> >>It is so difficult to make it scallable in CPython.
> > It seems you've never heard of fork(), which works just fine to scale
> > Python processes on multiprocessor boxes.
>there's a version of fork hidden somewhere in CPython that solves all
>interprocess communication and synchronization issues? cool.
Yep, it's called "fork stateless application servers that keep their state
in a relational database." <0.1 wink> It works for an astonishingly wide
assortment of business problems, anyway. :)
Don't get me wrong, I'm not opposed to adding better IPC capabilities; a
Linda-like IPC facility would be nice to have, too. I was just pointing
out the fallacy in the original post (whose attribution you deleted for
some reason), that *scalability* is the issue. The original poster was
claiming (in effect) that IPC and synchronization are trivial and that the
GIL is responsible for some mythical lack of "scalability". Threads can't
scale past one machine, no matter how many processors you put in it, so
it's a red herring IMO.
More information about the Python-Dev