Consideraciones sobre el servidor de aplicaciones
HCL Commerce es principalmente otra aplicación Java 2 que se ejecuta sobre WebSphere Application Server y WebSphere Liberty. Por consiguiente, WebSphere Application Server actúa como sistema operativo de HCL Commerce. La optimización de los servidores de aplicaciones optimizados mejora el rendimiento de HCL Commerce.
- Executor (equivalent to tWAS web container)
- connectionManager (equivalente al tamaño de la agrupación de conexiones del Origen de datos)
- JVM generic parametersdebe ajustarse enjvm.options
- Command line options Utilice esta guía como referencia a los parámetros JVM.
El servidor de transacciones de HCL Commerce utiliza WebSphere Application Server. Casi toda la información de ajuste de rendimiento se puede encontrar en la documentación de WebSphere Application Server, Version 9 (todos los temas por característica; supervisión y resolución de problemas; ajuste del rendimiento). Hay varias desviaciones menores específicas de HCL Commerce que describimos en las secciones siguientes.
Agrupación de conexiones de hebras de Contenedor Web
A diferencia de las hebras utilizadas por el servidor web, que requiere que muchas de ellas manejen grandes cantidades de solicitudes relativamente simples en un corto periodo de tiempo (es decir, servir un archivo .jpg), las solicitudes del servidor de aplicaciones son inferiores en número, son más complejas y tardan más tiempo en procesarse.
WebSphere Application Server permite a los usuarios personalizar el tamaño mínimo y máximo de la agrupación de hebras de Contenedor web. La creencia de que tener un gran número de hebras mejora el rendimiento y la posibilidad de manejar un gran número de usuarios simultáneos simplemente no es cierta.
En realidad, cuando hay demasiadas hebras de Contenedor web en ejecución, cada procesador del servidor puede estar tratando potencialmente muchas solicitudes en cualquier momento. Esto puede hacer que el sistema operativo tenga que emplear una cantidad significativa de tiempo gestionando y conmutando entre hebras en lugar de estar procesando las peticiones reales. Asimismo, cada hebra adicional consume recursos, como memoria y conexiones de base de datos, de WebSphere Application Server. Estos recursos de hebras externas se pueden utilizar si se liberan.
Si el valor de hebras de Contenedor web se establece en un número demasiado bajo, WebSphere Application Server no tendrá suficiente carga de trabajo y, por lo tanto, la CPU estará siempre infrautilizada.
Un método práctico bueno consiste en establecer el valor máximo en un mínimo de 10 hebras. Si tiene varios procesadores, empiece con 5 hebras para cada CPU al configurar el servidor de aplicaciones. Por ejemplo, en un sistema de 4 direcciones, se deberán utilizar 20 hebras de Contenedor web. Aumente el número máximo de hebras sólo cuando crea que la utilización de procesador puede ser mayor teniendo una carga de trabajo simultánea adicional.
El tamaño mínimo debe ser el mismo que el máximo; de esta forma, el servidor de aplicaciones no necesita destruir y crear hebras
- Hebras del contenedor web
- Hebras de programación activas
- Gestor de claves de HCL Commerce
- HCL Commerce auditoría
- Escuchas de IBM MQ
- Otras hebras de varias conexiones en el código personalizado
Agrupación de conexiones de base de datos
La documentación de indica que la agrupación de conexiones de base de datos debe ser menor que la agrupación de hebras de Contenedor web. Sin embargo, esto no es así para las configuraciones de HCL Commerce. Para configuraciones de HCL Commerce, cada hebra de contenedor web de WebSphere necesita al menos una conexión de base de datos para que coincidan. Además, cuando se utiliza el planificador de HCL Commerce, debe reservarse una conexión de base de datos adicional para garantizar que las hebras del planificador de HCL Commerce funcionan correctamente.
Sin suficientes conexiones de base de datos en la agrupación, no se pueden utilizar suficientes hebras para servir solicitudes. Por consiguiente, es posible que el procesador de servidor de aplicaciones no se utilice por completo y el rendimiento no sea tan alto como podría ser.
Tamaño de agrupación de conexiones de origen de datos
- Hebras del contenedor web
- Hebras del gestor de trabajo (cuatro grupos para el planificador, un grupo reservado para otras tareas de HCL Commerce)Para ver y editar los gestores de trabajo de HCL Commerce:
- Abra la consola de administración de WebSphere Application Server.
- Vaya a Gestor de trabajo.
- Cada gestor de trabajo de HCL Commerce se lista en la categoría HCL Commerce.
- Después de seleccionar un gestor de trabajo, puede ingresar el valor de la propiedad Número máximo de hebras en Propiedades de agrupación de hebras.
- Guarde los cambios.
Para determinar el tamaño de agrupación de conexiones, esta es la suma de todos los números máximos de hebras en todas las agrupaciones de hebras, incluidos los gestores de trabajo, contenedores web y el gestor de claves de HCL Commerce.
- Agrupación de hebras predeterminado.
La agrupación de hebras reservadas de HCL Commerce permite hasta un máximo de 10 hebras de forma predeterminada. En las hebras predeterminadas, hay hebras reservadas, por ejemplo para publicar tiendas, escuchas para IBM MQ, hebras de planificación de supervisión y auditoría de HCL Commerce. Si actualizó el número de hebras permitidas para escuchas de HCL Commerce IBM MQ, el tamaño de agrupación de las hebras reservadas y de las agrupación de conexiones de base de datos de HCL Commerce debe actualizarse según corresponda.
- El gestor de claves de HCL Commerce utiliza una conexión
- Otras hebras iniciadas por el código personalizado utilizando conexiones de la base de datos
- Abra la consola de administración de WebSphere Application Server.
- Vaya a
Donde db_type es DB2 u Oracle.
. - Aumente el tamaño de agrupación de conexiones de base de datos con el mismo número de conexiones que ha añadido a todas las opciones anteriores combinadas.
- Guarde los cambios.
Grupos de hebras del planificador
<applicationType>
. Existen dos atributos:- applicationName
- El identificador de la agrupación de hebras. Cuando se planifica un trabajo en la Consola de administración, el identificador se visualiza después de seleccionar el tipo de aplicación.
- maxNumofThreads
- El número máximo de hebras permitidas para la agrupación de hebras.
Memoria caché de sentencia preparada
De acuerdo con la documentación de WebSphere Application Server, se puede observar entre un 10% y un 20% de mejora de rendimiento con el uso de este parámetro. Para determinar el valor correcto, normalmente se utiliza el Visor de rendimiento de Tivoli para observar el comportamiento y minimizar las eliminaciones de memoria caché. No obstante, para HCL Commerce, no es un mecanismo eficaz debido al alto número de sentencias SQL que se ejecutan internamente.
El único modo fiable de determinar el valor óptimo para la memoria caché de sentencia preparada es con la medición de rendimiento real en un entorno controlado con cargas de trabajo repetibles. El valor inicial recomendado para la memoria caché de sentencia preparada es 150 y se deberá incrementar en intervalos de 50, hasta que no se observe más incremento de rendimiento.
- Seleccione Recursos.
- Pulse Proveedores JDBC.
- Pulse su_origen_datos_Commerce.
- Establezca el valor para el Tamaño de la memoria caché de la sentencia.