durusmail: quixote-users: mod_python
mod_python
2001-09-18
2001-09-18
2001-09-18
2001-09-19
2001-09-18
2001-09-19
2001-09-19
2001-09-19
2001-09-19
2001-09-19
mod_python
Greg Ward
2001-09-18
On 18 September 2001, Erno Kuusela said:
> te attached snippet sems to be enough to make quixote work with
> mod_python.
>
> it goes pretty fast (ab says 150 req/s with the demo "handler by a
> python function" url)

Cool!  What kind of hardware is this on?  I don't think we've
benchmarked the Quixote demo at all, so it's hard to compare.

> and doesn't need any non-free software
> (fastcgi).

For the record, the only extra software you need is mod_fastcgi.
... Oh, I see what you mean -- Open Market's license says you can only
use the code for implementing the FastCGI spec.  So it's not
OSI-compliant.  Bogus!

> here's how i set it up (debian woody):
>
>       apt-get install libapache-mod-python
>       cp quixote_handler.py /usr/local/lib/python2.0/site-packages/

Looks like we should add this as a module to the "quixote" package.  How
does quixote.mod_python sound -- too confusing?  I think
  PythonHandler quixote.mod_python
seems pretty straightforward.

> add to /etc/apache/httpd.conf:
>
>       LoadModule python_module /usr/lib/apache/1.3/mod_python.so
>
>       
>       SetHandler python-program
>       PythonPath "sys.path + ['/home/erno/quixote']"
>       PythonHandler quixote_handler
>       PythonOption quixote-package quixote.demo
>       PythonInterpreter quixote.demo
>       PythonDebug On
>       

Can you explain why the "quixote-package" option is needed?  I assume
it's because the application author doesn't write the code that
instantiates ModPythonPublisher, so needs another way to set the root
namespace.

Thoughts:
  * perhaps we should bring back the ROOT_NAMESPACE config variable.
    We took it away because it's so utterly fundamental to a Quixote
    application that it's not "just another config option".  But
    we also assumed that the application writer would always
    be the one instantiating a Publisher.
  * the mod_python option (if it's still needed) should be renamed to
    quixote-namespace or quixote-root-namespace, for consistency with
    Quixote's terminology

> you need a separate PythonInterpreter for each package.

Yes, that makes sense -- consistent with how Quixote FastCGI apps work.

        Greg
--
Greg Ward - software developer                gward@mems-exchange.org
MEMS Exchange                            http://www.mems-exchange.org


reply