[Repoze-dev] Plone on repoze + configuration details
Paul Everitt
paul at agendaless.com
Sun Sep 23 14:47:56 UTC 2007
This is cool news!
Is it to the point yet that I should give things a try and see if I
can document it for morons like me?
--Paul
On Sep 23, 2007, at 4:08 AM, Chris McDonough wrote:
> Plone running on top of the "repoze.zope2" (aka z2bob) package:
>
> http://www.repoze.org/tmp/plone
>
> I set it up so you can join and whatnot, although (as belied by the
> URL name) this is just temporary. In cursory clicking-around
> investigation, it seems to mostly work; I got one traceback from
> attempting to respond to the "activation" method in the email which
> I haven't investigated yet.
>
> This is Apache + mod_wsgi + repoze.zope2 (unreleased) + Zope 2.10.4/
> ZEO + Plone 3.0.1.
>
> The following Apache configuration:
>
> """
> WSGIPythonExecutable /home/repoze/tmp/site/bin/python
> WSGIDaemonProcess tmp threads=1 processes=4 maximum-requests=10000
>
> <Directory /home/repoze/tmp/site/etc>
> Order deny,allow
> Allow from all
> </Directory>
>
> <VirtualHost *:80>
> DocumentRoot /home/repoze/www/www.repoze.org
> ServerName www.repoze.org
> ScriptAlias /viewcvs "/usr/lib/cgi-bin/viewcvs.cgi"
> ServerAdmin repoze-dev at repoze.org
> WSGIScriptAlias /tmp /home/repoze/tmp/site/etc/zope2.wsgi
> WSGIProcessGroup tmp
> WSGIPassAuthorization On
> SetEnv HTTP_X_VHM_HOST http://www.repoze.org/tmp
> </VirtualHost>
> """
>
> I guess the sort of configuration we'll end up with as a deployment
> target. It runs four single-threaded Python processes, each of
> which is essentially running Zope courtesy of repoze. mod_wsgi
> communicates with each of the processes via pipes.
>
> The zope2.wsgi wrapper is:
>
> """
> import os
> from paste.deploy import loadapp
>
> ini = os.path.join(os.path.abspath(os.path.dirname(__file__)),
> 'zope2.ini')
> application = loadapp('config:%s' % ini)
> """
>
> The zope.conf is:
>
>
> """
> %define INSTANCE /home/repoze/tmp/site
> %define LOGDIR $INSTANCE/logs
>
> instancehome $INSTANCE
> products $INSTANCE/Products
> debug-mode on
>
> <eventlog>
> level info
> <logfile>
> path STDERR
> level info
> </logfile>
> </eventlog>
>
> <logger access>
> level WARN
> <logfile>
> path STDERR
> format %(message)s
> </logfile>
> </logger>
>
> <zodb_db temporary>
> mount-point /temp_folder
> <temporarystorage>
> name sessions
> </temporarystorage>
> container-class Products.TemporaryFolder.TemporaryContainer
> </zodb_db>
>
> <zodb_db main>
> mount-point /
> <zeoclient>
> server 127.0.0.1:8100
> cache-size 10MB
> storage 1
> name zeostorage
> var $INSTANCE/var
> </zeoclient>
> </zodb_db>
> """
>
> And the paste pipeline looks like this:
>
> """
> [DEFAULT]
> debug = True
>
> [app:zope2]
> paste.app_factory = repoze.obob.publisher:make_obob
> repoze.obob.get_root = repoze.zope2.z2bob:get_root
> repoze.obob.initializer = repoze.zope2.z2bob:initialize
> repoze.obob.helper_factory = repoze.zope2.z2bob:Zope2ObobHelper
> zope.conf = %(here)s/zope.conf
>
> [pipeline:main]
> pipeline = egg:Paste#cgitb egg:Paste#httpexceptions
> egg:repoze.retry#retry
> egg:repoze.tm#tm egg:repoze.vhm#vhm_xheaders zope2
> """
>
> We get about 100 requests/sec against the Zope Quickstart page from
> this configuration, which is about equivalent to plain-old-Zope
> running via ZServer on the same box.
>
> We had planned to creating a "repoze.z2compat" package, which would
> be a WSGI application that foregoes repoze.obob and uses the Zope
> request traverse method to do object traversal. But if it turns
> out that Plone runs well enough on top of "z2bob" we might not have
> to do that.
>
> Anyway, I think if we can figure out the intermittent skins problem
> I mentioned under the development server (which still seems to
> exist under the "zserver" server I created), I think we can
> probably start to package things up in anger.
>
> - C
>
> _______________________________________________
> Repoze-dev mailing list
> Repoze-dev at lists.repoze.org
> http://lists.repoze.org/mailman/listinfo/repoze-dev
_______________________________________________
Repoze-dev mailing list
Repoze-dev at lists.repoze.org
http://lists.repoze.org/mailman/listinfo/repoze-dev
More information about the Repoze-dev
mailing list