Nous avons ~ 300 processus de celeryd fonctionnant sous Ubuntu 10.4 64 bits, dans tous les processus ralenti prend ~ 19MB RES, ~ 174MB Virt, donc - il est environ 6 Go de RAM au ralenti pour tous les processus. À l'état actif - processus prend jusqu'à 100mb de RES et ~ 300mb VIRTCéleri - réduire la consommation de mémoire
Chaque processus utilise minidom (fichiers xml sont < 500kb, structure simple) et urllib.
Quetions est - comment pouvons-nous réduire RAM consuption - au moins pour les travailleurs inactifs, probablement quelques options de céleri ou python peut aider? Comment déterminer quelle partie prend le plus de mémoire?
UPD: thats agents de recherche de vol, un travailleur pour une agence/date. Nous avons 10 agences, une recherche d'utilisateur == 9 dates, ainsi nous avons 10 * 9 agents par recherche d'un utilisateur.
Est-il possible de démarrer des processus celeryd à la demande pour éviter les travailleurs inactifs (quelque chose comme MaxSpareServers sur Apache)?
UPD2: cycle de vie de l'agent est - envoyer requête HTTP, attendez la réponse ~ 10-20 sec, analyser xml (prend moins de 0,02 s), enregistrer le résultat de MySQL
avez-vous essayé serverfault.com ou #celery sur irc.freenode.net? – Unreason
serverfault est vide, malheureusement – Andrew
Pourquoi tant de serveurs 'celeryd' inactifs? –