2016-04-28 1 views
1

Nous avons un site de trafic très élevé sur une installation Plone 3 qui est actuellement en difficulté sous la charge. Nous avons redimensionné le serveur plusieurs fois et c'est maintenant évident que ce n'est pas le goulot d'étranglement. Est-il possible d'installer un serveur de mise en cluster Zeo avec Plone 3?Est-il possible de configurer un cluster Zeo sur Plone 3

+1

Il existe [zc.zrs] (https://pypi.python.org/pypi/zc.zrs) qui effectue la réplication maître-esclave des bases de données. Il existait déjà à l'époque de Plone 3 mais était alors commercial. Il pourrait être intéressant d'étudier si vous pouvez exécuter des versions récentes avec des clients Zope plus anciens. –

+0

Sinon, vous devriez considérer RelStorage https://community.plone.org/t/relstorage-still-used/1992 – avoinea

+0

Je n'ai pas obtenu si vous utilisez déjà un zeoserver séparé ou non. Comme Ulrich dit zc.zrs peut être une très bonne option, mais vous pouvez également enquêter si vous avez des goulots d'étranglement: par exemple Plone 3 n'utilisaient pas BLOB pour les fichiers par défaut, et l'installation de plone.app.blob peut augmenter beaucoup la performance –

Répondre

5

La réponse simple est: "oui, bien sûr." Si vous utilisez Plone> 3.1, vous le faites à peu près de la même façon que vous configurez un cluster dans Plone 4 ou 5.

Résolvez-vous votre problème? Si votre problème est que vous n'utilisez pas tous les cœurs sur une machine multicœur, un zeocluster est un bon moyen de le résoudre. Le thread dans une seule instance de Zope est très inefficace. Un cluster fait beaucoup mieux.

Dans le même temps, vous devriez voir si vous pouvez réduire le travail effectué par vos instances Zope. Avoir un cache proxy et une bonne mise en cache est la clé.

Et passez un peu de temps à mettre à jour vers Plone 4.x. Il est plus rapide que prévu pour le rendu des pages et dispose d'un système de gestion des taches plus efficace. Vous trouverez également que la documentation de Plone 4.x est excellente, y compris sur la mise à l'échelle. Si vous ne pouvez pas faire cela, recherchez une copie de "Practical Plone 3" pour la documentation sur l'architecture de cluster et la mise en cache.

+1

+100 à ce sujet. @AndrewMcLagan Il y a des gains énormes à faire, en vous assurant que vous avez assez de zeoclients pour utiliser pleinement le nombre de cœurs de processeur (nous montrant un ps -ef | grep python rapide nous permettra de vous le dire) et en employant des technologies de cache, blobstorage Et sérieusement enquêter sur la mise à niveau vers Plone 4 (même si vous avez besoin d'aide payante). Si vous ne le faites pas, l'utilisation de Docker/Relstorage/zc.zrs approche du mauvais angle IMO. – Danimal