En esta serie de blogs hablaré acerca de un tema que hemos atendido de manera continua y principalmente para empresas que no son nuestros clientes y que ya llevan un avance en relación a sus iniciativas con Liferay.
Liferay DXP es un software para establecer las denominadas “Experiencias Digitales”, es un software que puede ser utilizado como un simple CMS o bien aprovechar muchas de sus características que lo hacen ideal para grandes estrategias en las verticales de negocio.
Uno de los requisitos no funcionales que pueden representar un reto en algunos proyectos es el desempeño, desempeño que debe ser muy bueno para la percepción del usuario final. Resolver ese problema puede convertirse en una pesadilla para los equipos técnicos que se encargan de la operación; usualmente para resolverlo el primer razonamiento es incrementar la memoria o el procesamiento a los servidores. Ello no siempre tiene el resultado esperado
Antes que nada tengamos en cuenta lo siguiente: El tiempo total de despliegue de una página vista en el navegador cliente es la suma de una serie de micro momentos que desempeñan las distintas capas como los servidores de dominio, caché, web servers, app servers, JVMs, bases de datos, servicios propios y de terceros, así como medios de transmisión, navegadores y el desempeño del equipo de cómputo del usuario final. Todo ello podría jugar a favor o en contra en contra y por lo tanto deben ser analizados de manera minuciosa y con herramientas especializadas. Aquí les comparto una serie de pasos para atender y resolver:
- Lo segundo que hay que realizar es usar una herramienta para medir el desempeño del sitio o la aplicación y con ello eliminar la variable de la subjetividad.
- Lo tercero es usar un robot(de preferencia desde el internet) con el que se puedan realizar pruebas de carga y estrés al sitio para llevarlo a un punto de falla.
- Cuarto. usar una herramienta de tipo APM(Dynatrace de preferencia), con el cual observaremos el Journey de los usuarios y se colectará la información de la operación de la aplicación mas allá de sólo analizar logs; nos indicará a todo detalle en dónde se ubica el cuello de botella, el componente que está fallando o incluso el código SQL que tiene problemas.
- Quinto. Hacer los ajustes en las distintas capas, servicios, componentes e incluso código para obtener una mejora significativa en el tiempo de respuesta.
- Sexto. Repetir cuantas veces sea necesario desde el punto número dos hasta obtener el desempeño esperado.
Usa este método apoyándote de Dynatrace y tendrás una mejora sustancial.