Valores ajustables predeterminados de HCL Commerce
HCL Commerce tiene dos perfiles de instancia, Test y Production. Cada perfil contiene sus propios valores ajustables para los servidores de aplicaciones de HCL Commerce, incluidas las máquinas virtuales Java (JVM), las memorias caché, entre otros. Estos valores existen para proporcionar un nivel de rendimiento base estándar a partir del que operar, o ajustar las mejoras para configuraciones individuales.
El perfil Test se utiliza para los servidores de aplicaciones en el Entorno de prueba funcional o de autoría. El perfil Production se utiliza para los servidores de aplicaciones en el Entorno de prueba de producción o rendimiento. Los valores ajustables que se listan en este documento proporcionan una referencia que puede utilizar como punto de partida para ajustar su propio entorno. Puede ajustar cada valor en función del resultado de la prueba de rendimiento en su propio entorno.
HCL Commerceutiliza la inclusión de contenedores. Para asegurarse de que los valores ajustados persisten en instancias de contenedor subsiguientes, siga el procedimiento que se describe en Creación de una imagen de Docker personalizada a partir de un paquete desplegable . Como alternativa, puede personalizar el proceso de inicio del Docker para realizar el ajuste de JVM durante el inicio del Docker. Para obtener más información, consulte Guía de aprendizaje: Personalización de la lógica de inicio de Docker. Si no existe ningún mandato runEngine, puede desarrollar un mandato runEngine personalizado o sustituir el archivo de configuración completo por el contenido personalizado. Para fines de prueba o experimentos, puede cambiar el valor ajustable manualmente.
Valores de WebSphere IBM JVM (para HCL Commerce y búsqueda de HCL Commerce)
La tabla siguiente lista los valores de inicio para los servidores de aplicaciones de WebSphere que se ejecutan en Liberty (para el servidor de tienda y de búsqueda) y WebSphere Application Server (para servidores de transacción). Para simplificar el esfuerzo de ajuste, utilice parámetros similares para distintos servidores de aplicaciones. Si es probable que la carga de trabajo sea diferente en los distintos servidores (por ejemplo, en el servidor de transacción que se compara con los servidores de tienda), se pueden utilizar distintos valores ajustables para los distintos servidores. Los mandatos RunEngine que cambian los valores de JVM son: set-heap-size/add-system-property (para servidores de tienda y de búsqueda) y set-heap-size/add-generic-jvmarg (para servidores de transacción). Para modificar manualmente los valores de JVM en Liberty, edite el archivo jvm.options directamente. Para WebSphere Application Server , realice los cambios en la consola de administración.
Nombre de propiedad | Perfil de prueba de versión 9 | Perfil de producción de versión 9 |
---|---|---|
JDK de 32 / 64 bits | 64 bits | 64 bits |
Tamaño del hilo de mensajes | -Xss1m | -Xss1m |
Tamaño de las variables dinámicas iniciales (-Xms) | 512m | 2048 m |
Tamaño de las variables dinámicas máximas (-Xmx) | 1536m | 4096m |
Inhabilitar JIT | No | No |
Política de recogida de basura (-Xgcpolicy) | gencon | gencon |
Hilos de mensajes de recolección de basura (-Xgcthreads) | 2* | 8* Establezca el valor de gcthreads en el número de vCPU disponible o de vCPU -1. Para determinar el número de VCPU óptimo en cada contenedor Docker del servidor de aplicaciones, consulte ajuste de rendimiento de Docker. |
Vivero fijo (-Xmn) | No se especifica | 1536m |
Vivero de partida (-Xmns) | 256m | No especificado |
Vivero máximo (-Xmnx) | 768m | No especificado |
Registro e recogida de basura |
Habilitado con rotación de registro*: -Xverbosegclog[:<file>[,<X>,<Y>]] |
Habilitado con rotación de registro*: -Xverbosegclog[:<file>[,<X>,<Y>]] * Para obtener más información sobre este valor predeterminado, consulte Boring but necessary: Rotate the GC log!. |
Parámetro de ajuste adicional para la optimización de JSP | -Dcom.ibm.wsspi.jsp.disableResourceInjection=true | -Dcom.ibm.wsspi.jsp.disableResourceInjection=true |
HCL Commerce Valores de memoria caché (DynaCache)
La memoria caché base es la instancia de memoria caché que almacena las entradas de memoria caché de servlet y algunas entradas de memoria caché de mandato. Se define en todos los servidores de aplicaciones: Tienda, transacción y búsqueda. Sin embargo, la memoria caché base no se utiliza de forma predeterminada en el servidor de búsqueda.
Los valores ajustables son aplicables cuando se utiliza una memoria caché de servlet (para un fragmento JSP). La memoria caché se almacena en el servidor de la tienda en el entorno de la tienda remota, o en el servidor de transacción en el entorno de la tienda local. Para el entorno de la tienda remota, el servidor de la tienda de producción normalmente sigue el perfil Production, mientras que el servidor de transacción sigue el perfil Test. Modifique manualmente los valores de la memoria caché base: En los servidores de Liberty, edite el archivo server.xml directamente. En WebSphere Application Server, realice los cambios en la consola de administración.
Nombre de propiedad | Perfil de prueba de la versión 9 (o cuando no se utiliza la memoria caché de servlet) | Perfil de producción de la versión 9 (o cuando se utiliza la memoria caché de servlet) |
---|---|---|
|
2000 | 5000 |
|
Off | Activado |
|
Off | Off |
|
N/A | Alto rendimiento y uso elevado de la memoria |
|
N/A | 10 GB* 10 GB es un valor inicial. El valor se puede determinar con el equilibrio del espacio de disco y el tamaño de entrada total de la memoria caché. |
HCL Commerce Valores de la memoria caché de datos
Configuración de la memoria caché de datos HCL Commerce
Se definen las diferentes instancias de la memoria caché de datos para cada uno de los tres servidores de aplicaciones de HCL Commerce (tienda, búsqueda y transacción). El valor del perfil predeterminado es el mismo para la misma instancia de memoria caché en diferentes servidores (por ejemplo, WCFlexFlowDistributedMapCache existe tanto en el servidor de tienda como en el servidor de transacción). Pero puede ajustar el valor en función del uso real en los diferentes servidores.
Los valores de la tabla siguiente representan los valores iniciales para el ajuste del rendimiento. Es probable que el volumen de datos del negocio sea diferente al valor predeterminado. Por lo tanto, por ejemplo, una empresa puede tener un catálogo grande (por lo tanto, un gran número de grupos de catálogos y entradas de catálogos) pero un número muy reducido de promociones. Otra empresa puede tener un pequeño catálogo pero un gran número de promociones. Aumente o reduzca el tamaño de la memoria caché de datos según corresponda. Aumentar la memoria caché de datos elevará la ocupación de la memoria a causa del número de objetos almacenados (las memorias caché de datos solo se almacenan en la memoria). El equipo de rendimiento de HCL Commerce ha realizado pruebas de rendimiento para asegurarse de que el valor de tamaño de la memoria caché recomendado no provoca condiciones de falta de memoria en JVM. Sin embargo, el tamaño de la memoria caché de datos real se determina por el tamaño de cada entrada de la memoria caché y el número total de entradas de la memoria caché en la memoria. Realice sus propias pruebas de rendimiento para asegurarse de que el tamaño de la memoria caché de datos configurada pueda ser contenida en la memoria y que haya un equilibrio entre el rendimiento y el uso de la memoria.
Instancias de memoria caché de datos del servidor de transacción
Puede modificar manualmente los valores de la memoria caché de datos en la consola de administración de WebSphere Application Server.
Nombre de propiedad | Perfil de prueba de versión 9 | Perfil de producción de versión 9 |
---|---|---|
|
20.000 | 100.000 |
|
20.000 | 100.000 |
|
2.500 | 25.000 |
|
10.000 | 50.000 |
|
1.000 | 5.000 |
|
5.000 | 25.000 |
|
1.000 | 5.000 |
|
1.000 | 5.000 |
|
5.000 | 25.000 |
|
1.000 | 5.000 |
|
1.000 | 5.000 |
|
5.000 | 25.000 |
|
3.000 | 15.000 |
|
3.000 | 15.000 |
|
5.000 | 25.000 |
|
2000 | 10.000 |
|
2000 | 10.000 |
|
1.000 | 5.000 |
|
1.000 | 5.000 |
|
100.000 | 500.000 |
|
1.000 | 5.000 |
|
2000 | 10.000 |
|
1.000 | 5.000 |
|
1.000 | 1.000 |
|
3.000 | 10.000 |
|
3.000 | 15.000 |
|
3.000 | 15.000 |
|
3.000 | 15.000 |
|
5.000 | 50.000 |
|
5.000 | 50.000 |
|
3.000 | 15.000 |
|
10 | 50 |
|
10 | 10 |
|
5.000 | 25.000 |
Instancias de memoria caché de datos del servidor de tienda
Puede modificar manualmente los valores de la memoria caché de datos al editar directamente server.xml.
Nombre de propiedad | Perfil de prueba de versión 9 | Perfil de producción de versión 9 |
---|---|---|
|
1.000 | 5.000 |
|
5.000 | 25.000 |
|
3.000 | 15.000 |
|
3.000 | 15.000 |
|
1.000 | 5.000 |
|
1.000 | 5.000 |
|
1.000 | 5.000 |
|
1.000 | 1.000 |
Instancias de memoria caché de datos del servidor de búsqueda
Puede modificar manualmente los valores de la memoria caché de datos al editar directamente server.xml.
Nombre de propiedad | Perfil de prueba de versión 9 | Perfil de producción de versión 9 |
---|---|---|
|
5.000 | 25.000 |
|
1.000 | 5.000 |
|
2000 | 10.000 |
|
3.000 | 15.000 |
|
5.000 | 25.000 |
|
2000 | 10.000 |
|
2000 | 20.000 |
|
5.000 | 25.000 |
|
1.000 | 5.000 |
|
5.000 | 25.000 |
|
3.000 | 15.000 |
|
100 | 100 |
Otros valores ajustables
Los siguientes valores ajustables solo son aplicables al perfil de Production. No es necesario que se ajusten para el perfil de Testing.
Valor del ejecutor de Liberty
Liberty tiene un modelo de agrupación de hilo de mensajes diferente al de WebSphere Application Server . Hay una agrupación de Executor unificada para distintas conexiones. El valor predeterminado para esto es el ajuste automático. Sin embargo, la prueba de rendimiento de HCL Commerce revela que este valor puede causar comportamientos imprevisibles bajo grandes cargas de trabajo.
<executor maxThreads="50" coreThreads="4" />
Valor HTTP KeepAlive
<httpOptions keepAliveEnabled="true" maxKeepAliveRequests="-1" />
Tiempo de espera de la transacción para el servidor de búsqueda
<transaction totalTranLifetimeTimeout="600s"/>