Bonjour,

vous arrivez à la limite de la RAM que le système peut allouer, ce qui signifie au passage que cela fait un certain temps que le disque dur relaye la RAM (swap) et que les performances sont dégradées au delà du supportable... Pas la peine de chercher plus loin tant que vous avez des MemoryError. Maintenant, si vous me dites que vos outils d'administration du système ne le relèvent pas, je suis surpris.

Après, peut-être que Zope n'arrive pas bien à récupérer et part en boucle infinie (c'est déjà assez remarquable de ne pas planter direct), qu'une version plus récente se contenterait de s'arrêter, mais ça n'a pas grande importance.

On Dec 1, 2009, at 9:28 AM, Malika LB wrote:

Bonjour,

je reviens avec plus d'informations et des questions :

log du client zope :
(...)

MemoryError

voici la config de mon log coté ZEO, est ce que je peux augmenter le niveau de log et comment ?

Ça ne vous apprendra pas grand-chose dans ces conditions, mais cf plus bas


# ZEO configuration file

%define INSTANCE /usr/local/zope/zope274_zeo_server

<zeo>
  address 9999
  read-only false
  invalidation-queue-size 100
  # monitor-address PORT
  # transaction-timeout SECONDS
</zeo>

<filestorage 1>
  path $INSTANCE/var/Data.fs
</filestorage>

<eventlog>
  level info

Ici, mettre «level debug» ou «level all»

  <logfile>
    path $INSTANCE/log/zeo.log
  </logfile>
</eventlog>

<runner>
  program $INSTANCE/bin/runzeo
  socket-name $INSTANCE/etc/zeo.zdsock
  daemon true
  forever false
  backoff-limit 10
  exit-codes 0, 2
  directory $INSTANCE
  default-to-interactive true
  # user zope
  python /usr/local/zope/python.2.3.4/bin/python
  zdrun /usr/local/zope/zope274_base/lib/python/zdaemon/zdrun.py

  # This logfile should match the one in the zeo.conf file.
# It is used by zdctl's logtail command, zdrun/zdctl doesn't write it.
  logfile $INSTANCE/log/zeo.log
</runner>


La valeur du cache-size avait été augmenté pour faire face au pbs de cpu, de 30000 à 100000, à présent on la remise à 60000.

le cache-size ne va certainement pas améliorer des problèmes de CPU, mais des lenteurs liées au fait que les objets sont montés par réseau depuis le serveur ZSS. Quand les entrées/sorties deviennent le facteur limitant, au contraire, l'utilisation CPU chute : il ne fait qu'attendre.

Bref, 60000 est encore beaucoup trop dans votre cas : vous allez jusqu'au bout du swap, qu'en général on recommande de valoir deux fois la RAM.

Pour info nous n'envisageons pas de changer de version de zope/cps.

Merci d'avance.

Le 27 novembre 2009 12:46, Georges Racinet <[email protected]> a écrit :
Malika LB wrote:
> Bonjour,
>
> pour info, il s'agit du process python.
>
> Il n'y a pas de conversion de fichiers excel.

Voilà donc un point évacué. Il reste toutefois possible (seulement
possible) que régler l'emballement CPU règle le ClientDisconnected.

Avez-vous moyen de déterminer précisément le moment de l'emballement. Si oui, qu'avez-vous comme logs au niveau DEBUG, ou même TRACE, juste avant ?

Une remarque générale : CPS 3.2 et Zope 2.7 sont maintenant des versions
fort vieilles.
Au niveau du logiciel libre qu'est CPS générique, passer du temps sur ce problème n'est intéressant pour la communauté que dans la mesure où l'on
pense que la branche stable actuelle (CPS 3.4 sur Zope 2.9) en souffre
potentiellement. À ce stade, il est par exemple tout à fait possible que
ce soit un problème de Zope 2.7 réglé depuis longtemps dans Zope 2.9.

Je n'ai aucune idée de vos perspectives à moyen terme (un an) pour cette
application ni de l'étendue de vos développements spécifiques, mais ne
peux que vous encourager à envisager une migration à CPS 3.4.9

Très cordialement,

GR


>
> Merci.
>
> Le 19/11/09, *Racinet Georges* <[email protected]
> <mailto:[email protected]>> a écrit :
>
>
>     On Nov 19, 2009, at 5:59 PM, Malika LB wrote:
>
>         Bonjour,
>
> Je vous soumets un pb rencontré sur notre site en espérant que
>         vous connaissez ce genre de pb.
>
>         Symptomes:
>         - la navigation devient impossible, on a l'erreur suivante
>         chaque fois qu'on clique sur une page du site.
>         - le cpu s'emballe sur la machine concernée
> - le nb d'objets chargés sur les 2 instances de la même machine > atteignent des maximums (72 000) (database activity de la zmi)
>         Seul un arrêt relance de la machine vient à bout du pb.
>
>
>     Bonjour,
>
> pour le cpu, j'ai vu ça récemment avec la conversion des documents
>     excel.
>     Par ailleurs, cela pourrait être la cause première, le
> ClientDisconnected error devenant une conséquence d'un absence de
>     communications trop long entre client et serveur ZEO.
>     Ce n'est qu'une hypothèse...
>
>     Si le CPU s'emballe, vous devez savoir quels process l'occupe ?
>
>     Cordialement,
>
>     --
>     GR
>
>
>
>         Merci pour vos retours d'expérience.
>
>         Malika LAHOUCHE
>         ACOSS
>
>         Contexte :
>
> Zope/(Zope 2.7.4-0, python 2.3.4, linux2) ZServer/1.1 CPS/ 3.2 > 2 serveurs zope avec 2 instances chacun et un zeo pour la BD.
>         data.fs de 13 GO
>
> ci-joint un extrait du fichier zope.conf sur les 2 instances des
>         2 serveurs :
>         <zodb_db main>
>
>         mount-point /
>
>         # ZODB cache, in number of objects
>
>         #cache-size 30000
>
>         # modif 30/10/2009 suite problemes perf signales
>
>         cache-size 100000
>
>         <zeoclient>
>
>         server webprod11.ac750.recouv:9999
>
>         storage 1
>
>         name zeostorage
>
>         var $INSTANCE/var
>
>         # ZEO client cache, in bytes
>
>         #cache-size 50MB
>
>         cache-size 100MB
>
>         # Uncomment to have a persistent disk cache
>
>         #client zeo3
>
>         </zeoclient>
>
>         </zodb_db>
>
>
> Le client zope de la machine qui rencontre le pb nous renvoit ce
>         message à chaque consultation de page :
>         Traceback (innermost last):
>
>         Module ZPublisher.Publish, line 101, in publish
>
>         Module ZPublisher.mapply, line 88, in mapply
>
>         Module ZPublisher.Publish, line 39, in call_object
>
>         Module Products.CMFCore.PortalContent, line 116, in __call__
>
>         Module Shared.DC.Scripts.Bindings, line 306, in __call__
>
>         Module Shared.DC.Scripts.Bindings, line 324, in _bindAndExec
>
>         Module Shared.DC.Scripts.Bindings, line 343, in _bindAndExec
>
>         Module Products.CMFCore.FSPageTemplate, line 191, in _exec
>
> Module Products.CMFCore.FSPageTemplate, line 124, in pt_render
>
> Module Products.PageTemplates.PageTemplate, line 96, in pt_render
>
>         - <FSPageTemplate at /iliad/folder_view used for
>         /iliad/sections/metiers/lettres_acoss/dirres>
>
>         Module TAL.TALInterpreter, line 186, in __call__
>
>         Module TAL.TALInterpreter, line 190, in __call__
>
>         Module TAL.TALInterpreter, line 234, in interpret
>
>         Module TAL.TALInterpreter, line 650, in do_defineMacro
>
>         Module TAL.TALInterpreter, line 234, in interpret
>
>         Module TAL.TALInterpreter, line 409, in do_optTag_tal
>
>         Module TAL.TALInterpreter, line 394, in do_optTag
>
>         Module TAL.TALInterpreter, line 389, in no_tag
>
>         Module TAL.TALInterpreter, line 234, in interpret
>
>         Module TAL.TALInterpreter, line 671, in do_useMacro
>
>         Module TAL.TALInterpreter, line 234, in interpret
>
>         Module TAL.TALInterpreter, line 460, in do_setLocal_tal
>
>         Module Products.PageTemplates.TALES, line 221, in evaluate
>
> Module Products.PageTemplates.ZRPythonExpr, line 47, in __call__
>
>         - __traceback_info__: btool.getBoxes(here)
>
>         Module Python expression "btool.getBoxes(here)", line 1, in
>         <expression>
>
>         Module Products.CPSDefault.BoxesTool, line 94, in getBoxes
>
>         Module Products.CPSDefault.BoxesTool, line 288, in
>         _getFolderBoxesAndSettings
>
>         Module ZODB.Connection, line 597, in setstate
>
>         Module ZEO.ClientStorage, line 757, in load
>
>         Module ZEO.ClientStorage, line 75, in __getattr__
>
>         ClientDisconnected
>
>
>
>         _______________________________________________
>         cps-users-fr
>         Adresse de la liste : [email protected]
>         <mailto:[email protected]>
>         Gestion de l'abonnement :
>         <http://lists.nuxeo.com/mailman/listinfo/cps-users-fr>
>
>
>     --
>     Georges Racinet, http://www.racinet.fr <http://www.racinet.fr/>
>     Zope/CPS/Plone expertise, assistance & development
>     GPG: 0x4862FFF7
>
>
>
>
>
>
>
>     _______________________________________________
>     cps-users-fr
>     Adresse de la liste : [email protected]
>     <mailto:[email protected]>
>     Gestion de l'abonnement :
>     <http://lists.nuxeo.com/mailman/listinfo/cps-users-fr>
>
>


--
Georges Racinet, http://www.racinet.fr
Zope/CPS/Plone expertise, assistance & development
GPG: 0x4862FFF7


_______________________________________________
cps-users-fr
Adresse de la liste : [email protected]
Gestion de l'abonnement : <http://lists.nuxeo.com/mailman/listinfo/cps-users-fr >



--
Georges Racinet, http://www.racinet.fr
Zope/CPS/Plone expertise, assistance & development
GPG: 0x4862FFF7







_______________________________________________
cps-users-fr
Adresse de la liste : [email protected]
Gestion de l'abonnement : <http://lists.nuxeo.com/mailman/listinfo/cps-users-fr>

Répondre à