En este curso, haremos una instalación de alta disponibilidad de Liferay en contenedores Docker y entenderemos cómo funcionan las cachés del portal. Crearemos un pipeline de despliegue automático usando gitlab y someteremos a un componente de pruebas desarrollado con el service builder de Liferay a un conjunto de pruebas de carga y estrés y aprenderemos a monitorizar los entornos. Al finalizar el curso, dispondrás de un cluster de 10 nodos completamente preparados para usar en producción mas otro nodo configurado para los despliegues automáticos.

Temario del curso

  • Introducción

Bloque I. Instalación

Bloque II. Recursos estáticos de UI

  • Cómo servir los css unificados
    • En los themes
    • En los portlets
  • Cómo servir los javascripts unificados
    • En los themes
    • En los portlets
  • De forma global (module Liferay-JS-Resources-Top-Head)
  • Cómo servir los estáticos desde apache2

Bloque III. Cachés

  • Portlet de ejemplo (listado + formulario creación)
  • La caché del layout
  • La caché del portlet
  • La caché de los finders y entities
  • Creando un custom ehcache.xml
    • Añadir nueva caché
    • Modificar cachés existentes

Bloque IV. Clusterización

  • Balanceador con alta disponibilidad (2 nodos)
  • Clusterización de apache2 (2 nodos)
  • Clusterización de Liferay en Apache Tomcat con compartición de sesiones (2 nodos)
  • Clusterización de elasticsearch (2 nodos)
  • Clusterización de postgresql (2 nodos)

Bloque V. Despliegues automatizados

  • Instalación de gitlab
  • Configuración del pipeline de despliegue

Bloque VI. Pruebas de cargas y estrés

  • Instalación de Apache JMeter
  • Configuración del plan de pruebas
  • Simulación de usuarios

Bloque VII. Monitorización

  • A nivel del sistema operativo
  • A nivel de la JVM
  • A nivel del servidor de aplicaciones
  • A nivel de base de datos

Bloque VIII. Optimizaciones y buenas prácticas

Bloque IX. Proceso de actualización (ver post relacionado)

*También podemos realizar las prácticas con otros servidores de aplicaciones, bases de datos o sistemas operativos