Python Web Programming - looking for examples of solid high-traffic sites

Paul Boddie paul at boddie.org.uk
Thu May 17 11:35:29 EDT 2007


John Nagle wrote:
> Victor Kryukov wrote:
> >
> > Our main requirement for tools we're going to use is rock-solid
> > stability. As one of our team-members puts it, "We want to use tools
> > that are stable, has many developer-years and thousands of user-years
> > behind them, and that we shouldn't worry about their _versions_." The

When settling on an environment you need to have a clear strategy
about component versions and compatibility. Although Python provides a
fairly reasonable backwards compatibility story, one still needs to be
aware of changes between versions and their implications, but this is
the case for a large proportion of the software produced today.
Despite the baggage maintained by Microsoft so that ancient
applications might still run in recent versions of Windows, to choose
a fairly extreme example in certain respects, there are still many
things to be aware of when maintaining or upgrading your environment.
Saying that something needs "Python plus Windows/Linux plus some
database system" isn't going to be enough if you're emphasizing
stability.

> > main reason for that is that we want to debug our own bugs, but not
> > the bugs in our tools.
>
>     You may not be happy with Python, then.
>
>     Having spent the last several months implementing a reasonably complex
> web site in Python, I now have an understanding of the problems involved.
> Which are non-trivial.

I'm sure they are, which is why I attempt to use the tools and
services available to reduce the impact of those problems on myself.

>     Some key web site components, like the SSL interface and the
> MySQL interface, are written in C and maintained by third parties,
> often by a single person.  Getting the correct version for your
> platform and making it work can be difficult.  Getting the right
> versions of MySQL, OpenSSL, and Python to all play together is
> non-trivial.  Expect to have to build from source, debug the build
> process, look at source repositories, submit bug reports, fix
> library bugs yourself, and maintain a local set of library patches.

I think we went through this before, but to what extent did you rely
on your distribution to handle many of these issues? Or was this on
Windows? If so, you're the master of your own distribution rather than
a group of helpful people who've probably already done most of that
work.

>     Few hosting companies will have these modules available for you.
> It's not like Perl or PHP, where it works out of the box.  WebFaction
> claims to support Python well, but few other hosting companies bother.
> Most Linux distributions ship with older versions of Python, and
> that's what most hosting companies will give you.  Python 2.4
> is par for the course.

There's nothing wrong with Python 2.4. Perhaps you've inadvertently
highlighted an issue with the Python community: that everyone wants
the latest and greatest, and sees the CPython distribution as the
primary means of delivering it. If so, you've just included yourself
in the group causing yourself all those problems described above.

Paul

P.S. The inquirer may wish to visit sites representing the different
frameworks in order to seek testimonials, and to look for sites using
those frameworks in order to assess their popularity. Zope, Plone,
Django, TurboGears, Webware and many others have delivered high-
profile sites at various times, as far as I recall.




More information about the Python-list mailing list