Optimisation des performances Liferay – Guide complet

 Si votre portail Liferay est lent, consomme trop de mémoire ou met du temps à charger les pages, ce guide vous aidera à optimiser les performances étape par étape.

Dans cet article, vous apprendrez :

  • Le tuning JVM

  • L’optimisation base de données

  • La configuration du cache

  • L’optimisation en cluster

  • Une checklist production



Cette architecture est couramment utilisée dans les environnements microservices modernes.

👉 environnements microservices modernes


📌 Qu’est-ce que Liferay ?

Liferay est une plateforme DXP (Digital Experience Platform) utilisée pour :

  • Portails d’entreprise

  • Plateformes gouvernementales

  • Intégrations BPM

  • Applications CMS

Sa puissance et sa modularité nécessitent une configuration optimale en production.


🔥 1️⃣ Optimisation JVM

Liferay fonctionne sur la JVM. La configuration mémoire est essentielle.

Paramètres recommandés :

-Xms4g -Xmx4g -XX:MaxMetaspaceSize=1024m -XX:+UseG1GC -XX:MaxGCPauseMillis=200

Pourquoi ?

  • Xms = Xmx évite le redimensionnement du heap

  • G1GC améliore la gestion du garbage collection

  • Metaspace évite les problèmes liés aux classloaders


📷 Surveillance mémoire JVM

Outils recommandés :

  • JVisualVM

  • JConsole

  • Prometheus + Grafana


⚡ 2️⃣ Optimisation Base de Données

Liferay est fortement dépendant de la base de données.

Bonnes pratiques :

✔ Utiliser PostgreSQL ou MySQL en production
✔ Activer le pool de connexions
✔ Optimiser les index
✔ Augmenter le nombre de connexions

Exemple (portal-ext.properties) :

jdbc.default.maxActive=100 jdbc.default.maxIdle=20

🚀 3️⃣ Configuration du Cache

Liferay utilise Ehcache par défaut.

Améliorations :

  • Augmenter la taille du cache entité

  • Optimiser le finder cache

  • Activer le cache multi-VM en cluster

Configuration :

ehcache.multi.vm.config.location=/ehcache/liferay-multi-vm.xml

📷 Architecture du cache Liferay


🌍 4️⃣ Configuration Cluster (Production)

Pour la haute disponibilité :

✔ Plusieurs nœuds Liferay
✔ Base de données partagée
✔ Sessions sticky ou Redis
✔ Load balancer (Nginx / HAProxy)

Architecture type :

  • Load Balancer

  • 2–3 nœuds Liferay

  • Base partagée

  • Stockage partagé (S3/NFS)


⚙️ 5️⃣ Désactiver les modules inutiles

Les modules inutilisés consomment CPU et mémoire.

Chemin :

Panneau de configuration → Applications → Gérer les applications

Désactiver :

  • Modules marketplace inutilisés

  • Fonctionnalités démo

  • Connecteurs non utilisés


📊 6️⃣ Optimisation Elasticsearch

Si vous utilisez Elasticsearch :

✔ Augmenter le heap
✔ Ajuster le nombre de shards
✔ Lancer la réindexation hors heures de pointe


📷 Liferay + Elasticsearch


🧪 7️⃣ Optimisation Tomcat

Modifier server.xml :

maxThreads="300" acceptCount="100" connectionTimeout="20000"

Cela améliore la gestion des utilisateurs simultanés.


📋 Checklist Performance Production

✔ Heap JVM correctement configuré
✔ Base indexée
✔ Cache optimisé
✔ Elasticsearch configuré
✔ Cluster activé
✔ Modules inutiles supprimés


🎯 Conclusion

L’optimisation des performances Liferay nécessite une approche multi-niveaux :

  • JVM

  • Base de données

  • Cache

  • Recherche

  • Cluster

  • Modules applicatifs

Une bonne configuration peut améliorer les performances de 40 à 60 % en production.


💼 Support professionnel disponible

Si vous rencontrez des problèmes sur des projets réels liés au développement backend d’entreprise ou à l’automatisation des workflows, je propose des services de conseil payants, de débogage en production, de support projet et de formations ciblées.

Les technologies couvertes incluent Java, Spring Boot, PL/SQL, Azure, CMS, ainsi que l’automatisation des workflows (jBPM, Camunda BPM, RHPAM).

📧 Contact: ishikhanirankari@gmail.com | info@realtechnologiesindia.com

🌐 Website: IT Trainings | Digital lectern | Digital rostrum | Digital metal podium     


🎥 Learn IT with Shikha on YouTube

Prefer learning through videos? Watch practical tutorials on Kafka, Camunda, Alfresco, Java, Spring Boot, Microservices and Enterprise Architecture.

▶ Subscribe to Learn IT with Shikha on YouTube

Comments

Popular posts from this blog

Top 50 Camunda BPM Interview Questions and Answers for Developers (2026 Guide)

10 BPMN Best Practices Every Camunda Developer Should Know

OOPs Concepts in Java | English | Object Oriented Programming Explained