[Zope-dev] Plone/Zeocluster performances problems

Jean-Michel FRANCOIS jeanmichel.francois at makina-corpus.com
Mon Dec 8 05:17:27 EST 2008


Hi,

  Configuration of Zope is a pain. Take a first look there:
http://blip.tv/file/315714
Apache in your case is not the problem. I think this is your zope
configuration (only one thread per instance is a good thing).

Try a different configuration for session. you can expect to see a
ConflictError if your page take more than  20 seconds to be computed.

zserver-threads 1
maximum-number-of-session-objects 10000
session-timeout-minutes 60
session-resolution-seconds 600

For the portal_transform, lynx is used to make html2text and index the
content of type like document. Its better to get it but it this kind of
log doesn't matter.
I have never seen instance stop by themselve without logs i can't help
you on that point.

JeanMichel FRANCOIS

Service TICE a écrit :
> Hello
>
> After many searches I’m stuck on several problems, I hope you guys can  
> help me :)
>
> I’m using Plone as institutional webportal (Zope 2.9.8-final, python  
> 2.4.4) with python 2.4.4. The portal runs a zeocluster with 4  
> production instances, 3 threads each, and 1 admin instance (in debug  
> mode). All instances share the same ZODB and data.fs on local drive.  
> We use Apache 2 and a "STICKY_ROUTE" cookie to redirect user to the  
> instance he's logged to.
> We use SSO authentification (CAS) with PloneCASLogin 2.5.0.
>
> Apache configuration:
>
> ## Default Virtual Host Configuration
> Listen xxx.xxx.xxx:80
> NameVirtualHost xxx.xxx.xxx:80
> <VirtualHost xxx.xxx.xxx:80>
>             ServerName xxx.xxx.xxx
>             ServerAdmin xxx at xxx.xxx
>             <Proxy balancer://lb>
>                         BalancerMember http://xxx.xxx.xxx:8080  
> route=8080"
>                         BalancerMember http://xxx.xxx.xxx:8081  
> route=8081"
>                         BalancerMember http://xxx.xxx.xxx:8082  
> route=8082"
>                         BalancerMember http://xxx.xxx.xxx:8083  
> route=8083"
>             </Proxy>
>             # conditional proxy pass
>             ProxyPass / balancer://lb/VirtualHostBase/http/xxx.xxx.xxx: 
> 80/plone/VirtualHostRoot/             stickysession=STICKY_ROUTE
>             #LOGS
>             #LogLevel debug
>             ServerAlias *
>             CustomLog /opt/apache2/xxx.xxx.xxx.log combined
> </VirtualHost>
>
>
> We noticed that, sometimes, users are not redirected to right  
> instance, so we decided to use the same temporary_folder for all  
> instances and users are connected to the 4 instances at same time.
>
> But this modification causes errors like this one from my event.log  
> file:
>
> 2008-11-26T10:45:23 INFO ZPublisher.Conflict ConflictError at / 
> VirtualHostBase/http/XXXXX.fr:80/XXXX/VirtualHostRoot/Cours/ 
> Cours.XXXXX.4424/fichiersan_XXXXX.2530/cours_supports_affichage:  
> database conflict error (oid 0x2571, class BTrees._OOBTree.OOBTree,  
> serial this txn started with 0x037a24a416ae79bb 2008-11-26  
> 09:40:05.315987, serial currently committed 0x037a24a95ee0d788  
> 2008-11-26 09:45:22.237099) (1 conflicts (0 unresolved) since startup  
> at Wed Nov 26 10:43:19 2008)
>
> and this one from plone's error_log:
>
> Request URL
>
>     http://XXXXXX.fr/Members/XXXXX/Cours/Cours.XXXXX.4648/cours_attacher_template
>
> Exception Type
>
>     database conflict error (oid 0x1247, class  
> BTrees._OOBTree.OOBTree, serial this txn started with  
> 0x037a1ffe66682b66 2008-11-25 13:50:24.001620, serial currently  
> committed 0x037a1ffeae62ca44 2008-11-25 13:50:40.871695)
>
> Exception Value
>
>     database conflict error (oid 0x1247, class  
> BTrees._OOBTree.OOBTree, serial this txn started with  
> 0x037a1ffe66682b66 2008-11-25 13:50:24.001620, serial currently  
> committed 0x037a1ffeae62ca44 2008-11-25 13:50:40.871695)
>
> Traceback (innermost last):
>
>     * Module Zope2.App.startup, line 173, in zpublisher_exception_hook
>     * Module ZPublisher.Publish, line 121, in publish
>     * Module Zope2.App.startup, line 240, in commit
>     * Module transaction._manager, line 96, in commit
>     * Module transaction._transaction, line 380, in commit
>     * Module transaction._transaction, line 378, in commit
>     * Module transaction._transaction, line 436, in _commitResources
>     * Module ZODB.Connection, line 665, in tpc_vote
>     * Module ZEO.ClientStorage, line 893, in tpc_vote
>     * Module ZEO.ClientStorage, line 877, in _check_serials
>
> ConflictError: database conflict error (oid 0x1247, class  
> BTrees._OOBTree.OOBTree, serial this txn started with  
> 0x037a1ffe66682b66 2008-11-25 13:50:24.001620, serial currently  
> committed 0x037a1ffeae62ca44 2008-11-25 13:50:40.871695)
>
>  From what I understand, there's a conflict in my database when user  
> wants to access an object. I assume it's related to the  
> temporary_folder sharing modification because errors appeared after it.
> Is there a way to resolve this error? Is there inconvenient to share  
> temporary_folder? Should I stop it?
>
> My second problem, found in the event.log:
>
> 2008-11-26T10:45:28 ERROR PortalTransforms Cannot register transform  
> lynx_dump, using BrokenTransform: Error
> Unable to find binary "lynx" in /opt/local/bin:/usr/bin:/bin:/usr/ 
> sbin:/sbin:/usr/local/bin:/usr/X11/bin
>
> I don't understand when and why Plone tries to access to Lynx. We  
> don't receive any traceback error in Plone's error_log.
>
> Last but not least. Sometimes instances stops all alone. We were not  
> able to find why because we don't receive any error, message or  
> signal. When stops occur, we restart Zeo by ssh, then instances works  
> fine for some times but the problem comes back later.
> The server has 8 processors with very low usage but the 12gb RAM are  
> always saturated à 98%. Python process takes 1 to 2gb RAM but there's  
> a lot of "httpd" processes, up to 2.5gb each, their origin remains  
> unknown to us.
>
> Thanks
> _______________________________________________
> Zope-Dev maillist  -  Zope-Dev at zope.org
> http://mail.zope.org/mailman/listinfo/zope-dev
> **  No cross posts or HTML encoding!  **
> (Related lists - 
>  http://mail.zope.org/mailman/listinfo/zope-announce
>  http://mail.zope.org/mailman/listinfo/zope )
>   



More information about the Zope-Dev mailing list