Ajuste de JVM
Existen algunas configuraciones de JVM recomendadas para optimizar el rendimiento de ThingWorx que se deben realizar. El ajuste preciso de los parámetros de JVM, más allá de los que se indican a continuación es específico de la carga de trabajo y depende de las aplicaciones que se creen con ThingWorx. Para obtener un ajuste específico basado en el entorno del usuario, póngase en contacto con el soporte de PTC.
Configuración obligatoria
Configuración
Descripción
-server
Permite indicar explícitamente a la JVM que ejecute en modo servidor. Esto es así por defecto cuando se utiliza el JDK de 64 bits, pero es una práctica recomendada declararla.
-d64
Permite indicar explícitamente a la JVM que ejecute en modo de 64 bits. La JVM actual la detecta automáticamente, pero es una práctica recomendada declararla.
XX:+UseG1GC
Permite indicar a la JVM que utilice Garbage First Garbage Collector.
-Dfile.encoding=UTF-8
Permite indicar a la JVM que utilice UTF-8 como conjunto de caracteres por defecto, de modo que los alfabetos no occidentales se muestren correctamente.
-Djava.library.path
Permite especificar la ruta a la biblioteca nativa.
-Xms3072m (para un sistema con 4 GB de memoria)
Permite indicar la JVM que asigne un mínimo de 3072 MB de memoria al proceso de Tomcat. Se debe definir en un 75 % de la memoria del sistema disponible.
* 
La cantidad de memoria debe ajustarse según el entorno real.
-Xmx3072m (para un sistema con 4 GB de memoria)
Permite indicar a la JVM que limite la memoria máxima para el proceso de Tomcat. Se debe definir en un 75 % de la memoria del sistema disponible.
* 
El motivo por el que se igualan las cantidades mínima y máxima de memoria es para reducir la necesidad de que JVM tenga que volver a evaluar la memoria necesaria y cambiar el tamaño de la asignación en tiempo de ejecución. Mientras que se recomienda esto para los entornos alojados y/o públicos, para los entornos de prueba y desarrollo, la utilización de : Xms512m sería suficiente. Asimismo, verifique que quede suficiente memoria para permitir que el sistema operativo funcione.
-Dlog4j2.formatMsgNoLookups=true
Configuración opcional para activar la supervisión de JMX
Si se sospecha que hay problemas de memoria, se deben consultar las siguientes herramientas para obtener más información sobre la supervisión del sistema: La configuración que se muestra activará la conexión de estas herramientas a la instancia de Tomcat que ThingWorx utiliza para supervisar las características de JVM.
Configuración
Descripción
-Dcom.sun.management.jmxremote
Permite notificar a la JVM que está prevista la supervisión remota a través de JMX.
-Dcom.sun.management.jmxremote.port=22222
El puerto que la JVM debe abrir para la supervisión.
-Dcom.sun.management.jmxremote.ssl=false
No se utiliza SSL.
-Dcom.sun.management.jmxremote.authenticate=false
No se requiere ninguna autenticación.
-Djava.rmi.server.hostname=<host o IP>
El nombre de host o IP que la conexión del cliente RMI subyacente utilizará.
Actualización del valor de parámetro –Xmx
Al utilizar el instalador, toda la configuración de pila de Java se debe definir en MB en el fichero del servicio. Para ello, realice los siguientes pasos:
1. Detenga el ThingWorx-Foundation.service desde la ubicación por defecto /etc/systemd/system/ThingWorx-Foundation.service mediante el comando systemctl detención ThingWorx-Foundation.service.
2. Para confirmar que el estado del servicio se ha detenido, ejecute el comando systemctl stop ThingWorx-Foundation.service.
3. Consulte el fichero ThingWorx-Foundation.service en el terminal mediante el comando vi y cambie el valor del parámetro -Xmx. Asegúrese de que el fichero tenga permisos raíz. Consulte la siguiente captura de pantalla como ejemplo.
4. Cambie el valor del parámetro -Xmx de gb a mb y mantenga la unidad como m. Asegúrese de que sea mayor que el valor inicial de la pila. Consulte la siguiente captura de pantalla como ejemplo.
5. Ejecute el comando systemctl daemon-reload.
6. Inicie el servicio ThingWorx-Foundation mediante el comando systemctl start ThingWorx-Foundation.service.
7. Vuelva a ejecutar el instalador de la actualización.
Para obtener más información, consulte El artículo de soporte de PTC CS397788.
¿Fue esto útil?