Instalación y configuración > Instalación de ThingWorx > Apéndices de instalación > Detalles de la configuración de platform-settings.json
Detalles de la configuración de platform-settings.json
El fichero platform-settings.json está disponible para que los administradores puedan ajustar la configuración para ajuste fino y se puede encontrar en la descarga de software.
* 
En el siguiente ejemplo se incluyen todas las opciones. Solo se necesita un proveedor de persistencia.
{
"PlatformSettingsConfig": {
"BasicSettings": {
"BackupStorage": "/ThingworxBackupStorage",
"DatabaseLogRetentionPolicy": 7,
"EnableBackup": true,
"EnableHA": false,
"EnableSystemLogging": false,
"EnableSSO": false,
"FileRepositoryRoot": "/ThingworxStorage",
"HTTPRequestHeaderMaxLength": 2000,
"HTTPRequestParameterMaxLength": 2000,
"InternalAesCryptographicKeyLength": 128,
"Storage": "/ThingworxStorage",
"ScriptTimeout": 30
},
"SolutionCentralSettings": {
"SolutionCentralHost": "<Solution Central host name>",
"KeyStorePath": "<Path for your keystore>",
"KeyStorePass": "<Password for your keystore>"
},
"AdministratorUserSettings": {
"InitialPassword": "changeme"
},
"ContentTypeSettings": {
"supportedMediaEntityContentTypes" : ["image/svg+xml","image/png","image/gif","image/bmp","image/jpeg","application/pdf","image/vnd.microsoft.icon"]
},
"OrchestrationSettings": {
"EnableOrchestration": true,
"QueueHost": "localhost",
"QueuePort": 5672,
"QueueName": "256mb",
"QueueUsername": "flowuser",
"QueuePassword": "encrypt.queue.password",
"QueueVHost": "orchestration"
},
"ExtensionPackageImportPolicy": {
"importEnabled": false,
"allowJarResources": false,
"allowJavascriptResources": false,
"allowCSSResources": false,
"allowJSONResources": false,
"allowWebAppResources": false,
"allowEntities": false,
"allowExtensibleEntities": false
},
"HASettings": {
"CoordinatorConnectionTimeout": 15000,
"CoordinatorHosts": "127.0.0.1:2181",
"CoordinatorMaxRetries": 3,
"CoordinatorRetryTimeout": 1000,
"CoordinatorSessionTimeout": 90000,
"CoordinatorZNode": "/HALeadershipCoordinator",
"LoadBalancerBase64EncodedCredentials": "QWRtaW5pc3RyYXRvcjphZG1pbg=="
},
"LicensingConnectionSettings": {
"username": "<username>",
"password": "<password>",
"timeout":"60",
"useProxy": false,
"proxyHost": "<proxyHost>",
"proxyPort" : "<proxy port>",
"proxyScheme": "<http or https>",
"proxyUseNTLM": true,
"proxyUsername": "<user>",
"proxyPassword": "<user password>",
"proxyWorkstation": "<dummyWorkstation>",
"proxyDomain": "<dummyDomain>"
}
},
"PersistenceProviderPackageConfigs": {
"NeoPersistenceProviderPackage": {
"StreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 250000,
"maximumWaitTime": 10000,
"scanRate": 5,
"sizeThreshold": 1000
},
"ValueStreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 500000,
"maximumWaitTime": 10000,
"scanRate": 5,
"sizeThreshold": 1000
},
"PersistentPropertyProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 1000,
"maximumQueueSize": 100000,
"numberOfProcessingThreads": 20,
"scanRate": 25,
"sizeThreshold": 1000
}
},
"H2PersistenceProviderPackage": {
"ConnectionInformation": {
"acquireIncrement": 5,
"acquireRetryAttempts": 30,
"acquireRetryDelay": 1000,
"checkoutTimeout": 2000,
"idleConnectionTestPeriod": 6,
"initialPoolSize": 10,
"maxConnectionAge": 0,
"maxIdleTime": 0,
"maxIdleTimeExcessConnections": 36000,
"maxPoolSize": 100,
"maxStatements": 0,
"maxStatementsPerConnection": 50,
"minPoolSize": 10,
"numHelperThreads": 6,
"password": "password",
"tableLockTimeout": 10000,
"testConnectionOnCheckout": false,
"unreturnedConnectionTimeout": 0,
"username": "twadmin"
},
"StreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 250000,
"maximumWaitTime": 10000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
},
"ValueStreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 10000,
"maximumQueueSize": 500000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
},
"PersistentPropertyProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 1000,
"maximumQueueSize": 100000,
"numberOfProcessingThreads": 20,
"scanRate": 25,
"sizeThreshold": 1000
}
},
"PostgresPersistenceProviderPackage": {
"ConnectionInformation": {
"acquireIncrement": 5,
"acquireRetryAttempts": 3,
"acquireRetryDelay": 10000,
"checkoutTimeout": 1000000,
"driverClass": "org.postgresql.Driver",
"fetchSize": 5000,
"idleConnectionTestPeriod": 60,
"initialPoolSize": 5,
"jdbcUrl": "jdbc:postgresql://localhost:5432/thingworx",
"maxConnectionAge": 0,
"maxIdleTime": 0,
"maxIdleTimeExcessConnections": 300,
"maxPoolSize": 100,
"maxStatements": 100,
"minPoolSize": 5,
"numHelperThreads": 8,
"password": "password",
"testConnectionOnCheckout": false,
"unreturnedConnectionTimeout": 0,
"username": "twadmin"
},
"StreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 250000,
"maximumWaitTime": 10000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
},
"ValueStreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 500000,
"maximumWaitTime": 10000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
},
"PersistentPropertyProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 1000,
"maximumQueueSize": 100000,
"numberOfProcessingThreads": 20,
"scanRate": 25,
"sizeThreshold": 1000
}
},
"MssqlPersistenceProviderPackage": {
"ConnectionInformation": {
"acquireIncrement": 5,
"acquireRetryAttempts": 3,
"acquireRetryDelay": 10000,
"checkoutTimeout": 1000000,
"driverClass": "com.microsoft.sqlserver.jdbc.SQLServerDriver",
"fetchSize": 5000,
"idleConnectionTestPeriod": 60,
"initialPoolSize": 5,
"jdbcUrl": "jdbc:sqlserver://localhost:1433;databaseName=thingworx;applicationName=Thingworx;",
"maxConnectionAge": 0,
"maxIdleTime": 0,
"maxIdleTimeExcessConnections": 300,
"maxPoolSize": 100,
"maxStatements": 100,
"minPoolSize": 5,
"numHelperThreads": 8,
"password": "Password@123",
"testConnectionOnCheckout": false,
"unreturnedConnectionTimeout": 0,
"username": "msadmin"
},
"StreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumQueueSize": 250000,
"maximumWaitTime": 10000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
},
"ValueStreamProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 10000,
"maximumQueueSize": 500000,
"numberOfProcessingThreads": 5,
"scanRate": 5,
"sizeThreshold": 1000
},
"PersistentPropertyProcessorSettings": {
"maximumBlockSize": 2500,
"maximumWaitTime": 1000,
"maximumQueueSize": 100000,
"numberOfProcessingThreads": 20,
"scanRate": 25,
"sizeThreshold": 1000
}
}
}
}
Opciones de platform-settings.json
Para todas las bases de datos que se indican a continuación, se deben seguir las siguientes directrices para la configuración del procesador de flujo de valores y la configuración del procesador de flujo:
StreamProcessorSettings.numberOfProcessingThreads + ValueStreamProcessorSettings.numberOfProcessingThreads < 50% of DB connection pool
And
ValueStreamProcessorSettings.numberOfProcessingThreads >= StreamProcessorSettings.numberOfProcessingThreads
Configuración básica
Configuración
Por defecto
Descripción
BackupStorage
/ThingworxBackupStorage
El nombre del directorio donde se escriben todas las copias de seguridad.
DatabaseLogRetentionPolicy
7
El número de días que se conservan los registros de base de datos.
EnableBackup
true
Permite determinar si se conservan copias de seguridad.
EnableHA
falso
Permite determinar si ThingWorx se puede configurar para un entorno de alta disponibilidad.
EnableSystemLogging
falso
Permite determinar si se activa el registro del sistema.
* 
No se debe activar a menos que se reciban instrucciones del soporte técnico de ThingWorx.
EnableSSO
falso
Se define en true para activar SSO para ThingWorx Platform. Cuando se activa el SSO, toda la autenticación se redirige al servidor de autorización central que está configurado en el fichero sso-settings.json. La autenticación mediante websocket de Edge no se ve afectada.
FileRepositoryRoot
/ThingWorxStorage
El directorio donde se crea el almacén de ficheros raíz. La ubicación por defecto es suficiente para las implementaciones autónomas. Para las implementaciones de alta disponibilidad de ThingWorx, el almacén debe encontrarse en un sistema de ficheros compartidos donde todos los servidores de ThingWorx tengan acceso.
HTTPRequestHeaderMaxLength
2000
La longitud máxima permitida para los valores de las cabeceras de solicitud HTTP.
HTTPRequestParameterMaxLength
2000
La longitud máxima permitida para los valores de parámetros de solicitud HTTP.
InternalAesCryptographicKeyLength
128
Longitud de clave que se utiliza al generar una clave AES simétrica. Los valores soportados son 128, 192 y 256.
* 
La codificación y descodificación fallarán si la longitud de clave es mayor que 128 y las directivas Java no están configuradas para utilizar ese tamaño de clave.
Storage
/ThingWorxStorage
El directorio donde se crean/ubican todos los directorios de almacenamiento (excepto el almacenamiento de copia de seguridad).
ScriptTimeout
30
El número máximo de segundos que un script puede ejecutarse antes de que ThingWorx Platform lo termine.
* 
Los scripts de la plataforma se terminan automáticamente si el script se ejecuta durante más tiempo que el número de segundos configurados para este tiempo de espera.
* 
Se debe tener en cuenta la sensibilidad y/o la importancia de la información que gestionan los scripts al configurar la duración del tiempo de espera. Aunque, por razones de seguridad, es importante interrumpir los scripts después de un período de tiempo determinado, si se hace de manera prematura, se puede producir una pérdida de datos. Debido a la flexibilidad de ThingWorx Platform, existen casos de uso que pueden requerir períodos de tiempo de espera más cortos o más largos que el valor por defecto.
Configuración de la Central de soluciones
Configuración
Por defecto
Descripción
SolutionCentralHost
sc.thingworx.com
Nombre de host de la Central de soluciones.
SolutionCentralPort
443
Detalles del puerto de la Central de soluciones
* 
No se debe definir SolutionCentralPort si tiene un valor por defecto.
KeyStorePath
/ThingworxPlatform/sc-keystore
Ruta de keystore.
KeyStorePass
Ninguno
Contraseña de keystore.
* 
Para cifrar la contraseña, defina KeyStorePass en encrypt.sc.password.
Configuración de ThingWorx Flow
Estas propiedades solo se aplican si ThingWorx Flow está instalado en ThingWorx Foundation. Estos valores se deben definir en los ficheros de configuración de ThingWorx Flow y RabbitMQ, y no se deben editar a menos que se modifiquen en ambas aplicaciones.
Configuración
Por defecto
Descripción
EnableOrchestration
verdadero
Permite indicar si ThingWorx Flow está activado en ThingWorx Foundation.
QueueHost
Host local
Nombre de host de RabbitMQ
QueuePort
5672
Puerto de RabbitMQ
QueueName
256mb
Nombre de cola de RabbitMQ
QueueUsername
flowuser
Nombre de usuario de cola de RabbitMQ
QueuePassword
encrypt.queue.password
Contraseña de cola de RabbitMQ
* 
La contraseña se cifra automáticamente al instalar ThingWorx Flow en el mismo ordenador que ThingWorx Foundation.
Si ThingWorx Flow está instalado en un ordenador distinto al de ThingWorx Foundation, es necesario cifrar esta contraseña.
QueueVHost
orchestration
Nombre de host virtual de RabbitMQ
Directiva de importación de paquetes de extensión
La importación de extensiones está desactivada por defecto para todos los usuarios. Utilice las siguientes opciones para configurar la funcionalidad de importación de extensiones. Para obtener más información, consulte Importación de extensiones.
Configuración
Descripción
Por defecto
Ejemplos
importEnabled
El control de nivel superior que representa la posibilidad de importar (= true) o no importar (= false) extensiones.
falso
"importEnabled": false: no se pueden importar extensiones, incluso si otra configuración de ExtensionPackageImportPolicy se defina en true.
"importEnabled": true: se pasa la importación de extensiones al siguiente conjunto de configuración de allow<Content>Resources (consulte las filas siguientes).
* 
Si la configuración de allow<Content>Resources es false, se puede importar una extensión vacía (sin entidades, entidades extensibles ni recursos). Puesto que probablemente esta no sea una configuración útil, si importEnabled se define en true, al menos otra configuración de allow<Content>Resources también se debe definir en true.
allowJarResources
Permite la importación de las extensiones con recursos Jar.
falso
"allowJarResources": true : permite la importación de las extensiones que declaran ficheros jar en su manifiesto como recursos jar.
"allowJarResources": false : no permitirá la importación de las extensiones que declaran ficheros jar en su manifiesto como recursos jar.
allowJavascriptResources
Permite la importación de las extensiones con recursos JavaScript.
falso
"allowJavascriptResources": true: permite la importación de las extensiones que declaran recursos de fichero de interfaz de usuario JavaScript en su manifiesto como recursos JavaScript.
"allowJavascriptResources": false: no permitirá la importación de las extensiones que declaran recursos de fichero de interfaz de usuario JavaScript en su manifiesto como recursos JavaScript.
allowCSSResources
Permite la importación de las extensiones con recursos CSS.
falso
"allowCSSResources": true: permite la importación de las extensiones que contienen recursos de fichero de interfaz de usuario CSS.
"allowCSSResources": false: no permitirá la importación de las extensiones que contienen recursos de fichero de interfaz de usuario CSS.
allowJSONResources
Permite la importación de las extensiones con recursos JSON (por ejemplo, ficheros de localización).
falso
"allowJSONResources": true: permite la importación de las extensiones que contienen recursos de fichero de interfaz de usuario JSON.
"allowJSONResources": false: no permitirá la importación de las extensiones que contienen recursos de fichero de interfaz de usuario JSON.
allowWebAppResources
Permite la importación de las extensiones con recursos Web.
falso
"allowWebAppResources": true: permite la importación de las extensiones que contienen recursos de fichero de interfaz de usuario WebApp.
"allowWebAppResources": false: no permitirá la importación de las extensiones que contienen recursos de fichero de interfaz de usuario WebApp.
allowEntities
Permite la importación de las extensiones con entidades no extensibles. Los siguientes son ejemplos de entidades no extensibles:
Clave de aplicación
Autenticador
Tablero
Definición de análisis de datos
Definición de datos
GenericContentEntity y clases hijo derivadas, como la definición de estado, la definición de estilo y el tema de estilo
Grupo
Tabla de localización
Registro
Mashup
Entidad multimedia
Menú
ModeledServiceProviderEntity y clases hijo, como el contenido de notificación
Red
Definición de notificación
Organización
Proveedor de persistencia
PersistenceProviderPackage y clases hijo derivadas
Proyecto
Definición de cosa
Plantilla de cosa
Usuario
Vocabulario y clases hijo derivadas, como DataTagVocabulary, ModelTagVocabulary
falso
"allowEntities": true: permite la importación de las extensiones que declaran entidades no extensibles en su manifiesto.
"allowEntities": false: no permitirá la importación de las extensiones que declaran entidades no extensibles en su manifiesto.
allowExtensibleEntities
Permite la importación de las extensiones con entidades no extensibles. Los siguientes son ejemplos de entidades extensibles:
DirectoryService y clases hijo derivadas
ExtensionPackage
Las clases de recurso e hijo derivadas en las que se incluyen funciones y servicios personalizados que se utilizan como recursos similares a los recursos de fábrica, como InfoTableFunctions, EntityServices y EncryptionServices.
* 
No afecta a los subsistemas de fábrica que no forman parte de extensiones.
ScriptFunctionLibrary y clases hijo derivadas.
El subsistema y clases hijo derivadas.
* 
No afecta a los subsistemas de fábrica que no forman parte de extensiones.
Paquete de cosa
Widget
falso
"allowExtensibleEntities": true: permite la importación de las extensiones que declaran entidades no extensibles en su manifiesto.
"allowExtensibleEntities": false: no permitirá la importación de las extensiones que declaran entidades no extensibles en su manifiesto.
Configuración de HA
Las opciones específicas de una configuración de entorno de alta disponibilidad de PostgreSQL. Toda la configuración se desestima si la opción EnableHA anterior se define en false. Se deben modificar CoordinatorHosts y LoadBalancerBase64EncodedCredentials para ajustarse al entorno del usuario.
Configuración
Por defecto
Descripción
CoordinatorConnectionTimeout
15000
La cantidad de tiempo que se debe esperar (en milisegundos) para que se establezca una conexión con el servicio Apache ZooKeeper que se utiliza para coordinar la dirección de ThingWorx.
CoordinatorHosts
127.0.0.1:2181
Una lista delimitada por comas de los servidores de Apache ZooKeeper utilizados para coordinar la elección de la prioridad de ThingWorx. El patrón de la cadena es IP:puerto. (Por ejemplo, "127.0.0.1:2181, 127.0.0.2:2181").
CoordinatorMaxRetries
3
El número máximo permitido de reintentos que se realizarán para establecer una conexión con el servicio Apache ZooKeeper que se utiliza para coordinar la prioridad de ThingWorx.
CoordinatorRetryTimeout
1000
La cantidad de tiempo que se debe esperar (en milisegundos) para cada reintento.
CoordinatorSessionTimeout
90000
La cantidad de tiempo que ThingWorx espera (en milisegundos) sin recibir un "latido" del servicio Apache ZooKeeper que se utiliza para coordinar la prioridad de ThingWorx.
CoordinatorZNode
/HALeadershipCoordinator
Cuando varias implementaciones de alta disponibilidad de ThingWorx comparten un servicio Apache ZooKeeper, esta configuración debe proporcionar un valor único para cada implementación de alta disponibilidad de ThingWorx. El valor de esta configuración puede ser arbitrario, pero debe seguir el formato /<cualquierTexto>. Por ejemplo, las instancias de ThingWorx TWX1 y TWX2 están en el sistema de alta disponibilidad A y las instancias de ThingWorx TWX3 y TWX4 están en el sistema de alta disponibilidad B. CoordinatorZNode se define en /HAsystemA para TWX1 y TWX2, y se define en /HAsystemB para TWX3 y TWX4.
LoadBalancerBase64EncodedCredentials
QWRtaW5pc3RyYXRvcjphZG1pbg==
Las credenciales codificadas en Base64 para el equilibrador de la carga HA, en el formato <usuario>:<contraseña única>
* 
No utilice un usuario de ThingWorx.
* 
Se puede utilizar cualquier utilidad que codifique en Base64 la cadena coincidente <usuario>:<contraseña única> que se utiliza en la configuración del equilibrador de la carga.
Configuración del usuario administrador
Configuración
Por defecto
Descripción
InitialPassword
n/d
La contraseña inicial del administrador que se requiere para conectarse a ThingWorx por primera vez. La longitud mínima se puede configurar en el subsistema de gestión de usuarios (mínimo 10 caracteres, por defecto tiene 14 caracteres). Consulte Contraseñas para obtener más información.
Configuración de tipo de contenido
Configuración
Por defecto
Descripción
supportedMediaEntityContentTypes
"image/svg+xml","image/png","image/gif","image/bmp","image/jpeg","application/pdf","image/vnd.microsoft.icon"
Lista delimitada por comas de tipos de contenido MIME válidos que se pueden vincular dinámicamente a entidades multimedia. Se pueden añadir tipos adicionales.
* 
Si el tipo de contenido que procede de un tipo de servidor diferente no es un tipo de entidad multimedia soportado, el contenido se descarga como un fichero en el ordenador cliente en lugar de transmitirse con la entidad multimedia.
Configuración de conexión de licencias
Configuración
Por defecto
Descripción
username
n/d
Nombre de usuario del sitio de soporte técnico de PTC
password
n/d
Contraseña del sitio de soporte técnico de PTC
timeout (en segundos)
60
Tras el período de tiempo de espera, se registra el siguiente error en el registro de aplicación:
License Server could not process request
useProxy
falso
Permite activar la configuración de Proxy para licencias. Si se define en verdadero, se utiliza la configuración de proxy para conectar con el servidor de licencias.
proxyHost
El nombre del host Proxy.
proxyPort
El número de puerto del host Proxy.
proxyScheme
http
http o https.
proxyUsername
El nombre de usuario para la autentificación si la conexión del servidor Proxy requiere autenticación.
proxyPassword
La contraseña para la autentificación si la conexión del servidor Proxy requiere autenticación.
* 
Consulte Cifrado de contraseñas para obtener información sobre el cifrado de este valor.
proxyUseNTLM
falso
Opción para utilizar el protocolo NTLM.
proxyWorkstation
El nombre del ordenador del usuario en la red, si se requiere la autenticación NTLM.
proxyDomain
El nombre del dominio del usuario, si se requiere la autenticación NTLM.
NeoPersistenceProviderPackage
Contiene la configuración del proveedor de persistencia específico de Neo4j. Si Neo4j no es el proveedor de persistencia, se debe desestimar toda la sección.
Configuración
Por defecto
Descripción
StreamProcessorSettings
maximumBlockSize
2500
El número máximo de escrituras de flujo que se van a procesar en un bloque.
maximumQueueSize
250000
El número máximo de entradas de flujo que pueden existir en cola (las posteriores se rechazarán).
maximumWaitTime
10000
El tiempo de espera máximo (en milisegundos) antes de vaciar el búfer de flujo.
scanRate
5
La velocidad (en milisegundos) con la que se debe verificar el estado del búfer.
sizeThreshold
1000
El número máximo de elementos que se pueden acumular antes de vaciar el búfer de flujo.
ValueStreamProcessorSettings
maximumBlockSize
2500
El número máximo de escrituras de flujo que se van a procesar en un bloque.
maximumQueueSize
500000
El número máximo de entradas de flujo que pueden existir en cola (las posteriores se rechazarán).
maximumWaitTime
10000
El tiempo de espera máximo (en milisegundos) antes de vaciar el búfer de flujo.
scanRate
5
La velocidad (en milisegundos) con la que se debe verificar el estado del búfer.
sizeThreshold
1000
El número máximo de elementos que se pueden acumular antes de vaciar el búfer de flujo.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
El número máximo de escrituras de propiedad para procesar en un bloque.
maximumWaitTime
1000
El tiempo de espera máximo (en milisegundos) antes de vaciar el búfer de propiedad.
maximumQueueSize
100000
El número máximo de entradas de propiedad que pueden existir en cola (las posteriores se rechazarán).
numberOfProcessingThreads
20
El número de subprocesos que se deben utilizar al procesar propiedades.
scanRate
25
La velocidad (en milisegundos) con la que se debe verificar el estado del búfer.
sizeThreshold
1000
El número máximo de elementos que se pueden acumular antes de vaciar el búfer de propiedad.
H2PersistenceProviderPackage
Configuración
Por defecto
Descripción
Información de conexión
acquireIncrement
5
Permite determinar el número de conexiones que ThingWorx intentará adquirir a la vez cuando la agrupación se agote.
acquireRetryAttempts
30
Permite definir cuántas veces ThingWorx intentará adquirir una nueva conexión de la base de datos antes de abandonar.
acquireRetryDelay
1000
El tiempo (en milisegundos) que ThingWorx esperará entre los intentos de adquisición.
checkoutTimeout
1000000
El número de milisegundos que un cliente que llama a getConnection() esperará a que se archive o adquiera una conexión cuando la agrupación se agote.
idleConnectionTestPeriod
6
El período de tiempo (en segundos) durante el que se probarán las conexiones de modo que las conexiones inactivas no se cerrarán desde procesos externos, como barreras de seguridad, etc. Si se trata de un número mayor que 0, ThingWorx probará todas las conexiones inactivas, agrupadas pero no extraídas, cada x segundos.
* 
Si se produce errores de tipo "Sin conexión con el proveedor de modelos", revise esta configuración. Compárela con los valores por defecto de la barrera de seguridad. Al disminuir el valor por defecto, se reducirán las incidencias de desconexión.
initialPoolSize
10
Número inicial de conexiones de base de datos creadas y conservadas dentro de una agrupación durante el arranque. Debe estar entre minPoolSize y maxPoolSize.
maxConnectionAge
0
Segundos, efectivamente un período de vida. Una conexión más antigua que maxConnectionAge se destruirá y se depurará de la agrupación.
maxIdleTime
0
Segundos que una conexión puede permanecer en la agrupación, pero sin utilizar, antes de que se descarte. Cero significa que las conexiones inactivas nunca vencen.
maxIdleTimeExcessConnections
36000
El número de segundos que debe permitirse que las conexiones en exceso de minPoolSize permanezcan inactivas en la agrupación antes de que se seleccionen. Está previsto para las aplicaciones que desean minimizar agresivamente el número de conexiones abiertas, reduciendo la agrupación de nuevo a minPoolSize si, después de un pico, disminuye el nivel de carga y ya no se necesitan las conexiones adquiridas. Si se define maxIdleTime, maxIdleTimeExcessConnections debe ser inferior para que surta efecto. Si se define en cero, significa que no hay ninguna aplicación y que las conexiones en exceso no se desactivan.
maxPoolSize
100
El número máximo de conexiones que una agrupación conservará en un momento dado.
maxStatements
0
El tamaño de la caché PreparedStatement global de ThingWorx.
maxStatementsPerConnection
50
El tamaño de la caché PreparedStatement global de ThingWorx para cada conexión.
minPoolSize
5
El número mínimo de conexiones que una agrupación conservará en un momento dado.
numHelperThreads
6
El número de subprocesos auxiliares que se van a generar. Generalmente, las operaciones JDBC lentas las realizan subprocesos auxiliares que no contienen bloqueos de contención. La distribución de estas operaciones en varios subprocesos puede mejorar significativamente el rendimiento, ya que permitirá que varias operaciones se realicen simultáneamente.
password
n/d
Contraseña de base de datos.
username
twadmin
Nombre de usuario de base de datos.
tableLockTimeout
10000
El número de milisegundos que un cliente esperará a que se desbloquee una tabla de base de datos.
testConnectionOnCheckout
falso
Si es true, se realizará una operación en cada extracción de conexión para verificar que la conexión es válida.
unreturnedConnectionTimeout
0
El número de segundos que se debe esperar una respuesta de una conexión que no responde antes de descartarla. Si se define y una aplicación extrae una conexión, pero no la archiva dentro del período de tiempo especificado, la agrupación descartará la conexión. De este modo, las aplicaciones con pérdidas ocasionales de conexión persistirán, en lugar de agotar la agrupación de conexión. Cero significa ningún tiempo de espera y las aplicaciones deberán cerrar sus propias conexiones.
StreamProcessorSettings
maximumBlockSize
2500
El número máximo de escrituras de flujo que se van a procesar en un bloque.
maximumQueueSize
250000
El número máximo de entradas de flujo que pueden existir en cola (las posteriores se rechazarán).
maximumWaitTime
10000
El tiempo de espera máximo (en milisegundos) antes de vaciar el búfer de flujo.
numberOfProcessingThreads
5
El número de subprocesos que se deben utilizar al procesar propiedades.
scanRate
5
La velocidad (en milisegundos) con la que se debe verificar el estado del búfer.
sizeThreshold
1000
El número máximo de elementos que se pueden acumular antes de vaciar el búfer de flujo.
ValueStreamProcessorSettings
maximumBlockSize
2500
El número máximo de escrituras de flujo que se van a procesar en un bloque.
maximumQueueSize
250000
El número máximo de entradas de flujo que pueden existir en cola (las posteriores se rechazarán).
maximumWaitTime
10000
El tiempo de espera máximo (en milisegundos) antes de vaciar el búfer de flujo.
numberOfProcessingThreads
5
El número de subprocesos que se deben utilizar al procesar propiedades.
scanRate
5
La velocidad (en milisegundos) con la que se debe verificar el estado del búfer.
sizeThreshold
1000
El número máximo de elementos que se pueden acumular antes de vaciar el búfer de flujo.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
El número máximo de escrituras de propiedad para procesar en un bloque.
maximumWaitTime
1000
El tiempo de espera máximo (en milisegundos) antes de vaciar el búfer de propiedad.
maximumQueueSize
100000
El número máximo de entradas de propiedad que pueden existir en cola (las posteriores se rechazarán).
numberOfProcessingThreads
20
El número de subprocesos que se deben utilizar al procesar propiedades.
scanRate
25
La velocidad (en milisegundos) con la que se debe verificar el estado del búfer.
sizeThreshold
1000
El número máximo de elementos que se pueden acumular antes de vaciar el búfer de propiedad.
PostgresPersistenceProviderPackage
Configuración
Por defecto
Descripción
ConnectionInformation
acquireIncrement
5
Permite determinar el número de conexiones que la plataforma intentará adquirir a la vez cuando la agrupación se agote.
acquireRetryAttempts
3
Permite definir cuántas veces ThingWorx intentará adquirir una nueva conexión de la base de datos antes de abandonar.
acquireRetryDelay
10000
El tiempo (en milisegundos) que ThingWorx esperará entre los intentos de adquisición.
checkoutTimeout
10000000
El número de milisegundos que un cliente que llama a getConnection() esperará a que se archive o adquiera una conexión cuando la agrupación se agote.
driverClass
org.postgresql.Driver
El nombre de clase completo de JDBC driverClass que se espera que proporcione las conexiones.
fetchSize
5000
El número de filas que se debe capturar por lotes en lugar del almacenamiento en caché de todas las filas en el lado del cliente.
idleConnectionTestPeriod
60
Si se trata de un número mayor que 0, ThingWorx probará todas las conexiones inactivas, agrupadas pero no extraídas, cada x segundos.
initialPoolSize
5
Número inicial de conexiones de base de datos creadas y conservadas dentro de una agrupación durante el arranque. Debe estar entre minPoolSize y maxPoolSize.
jdbcUrl
jdbc:postgresql://localhost:5432/thingworx
El URL de jdbc que se utiliza para conectar con PostgreSQL.
* 
Si se cambia el nombre de esquema por defecto (de público), se debe añadir <databasename>?currentSchema=<nombre del esquema>. Por ejemplo, si el nombre de esquema es mySchema, sería: jdbc:postgresql://<DBServer>:<DBPort>/<databasename>?currentSchema=mySchema
* 
Si se configura una solución de alta disponibilidad, debe reflejar el IP del servidor en el que se ejecuta el proceso pgPool. Cambie al puerto al que atiende pgPool.
maxConnectionAge
0
Segundos, efectivamente un período de vida. Una conexión más antigua que maxConnectionAge se destruirá y se depurará de la agrupación.
maxIdleTime
0
Segundos que una conexión puede permanecer en la agrupación, pero sin utilizar, antes de que se descarte. Cero significa que las conexiones inactivas nunca vencen.
maxIdleTimeExcessConnections
300
El número de segundos que debe permitirse que las conexiones en exceso de minPoolSize permanezcan inactivas en la agrupación antes de que se seleccionen. Está previsto para las aplicaciones que desean minimizar agresivamente el número de conexiones abiertas, reduciendo la agrupación de nuevo a minPoolSize si, después de un pico, disminuye el nivel de carga y ya no se necesitan las conexiones adquiridas. Si se define maxIdleTime, maxIdleTimeExcessConnections debe ser inferior para que surta efecto. Si se define en cero, significa que no hay ninguna aplicación y que las conexiones en exceso no se desactivan.
maxPoolSize
100
El número máximo de conexiones que una agrupación conservará en un momento dado.
maxStatements
100
El tamaño de la caché PreparedStatement global de ThingWorx.
minPoolSize
5
El número mínimo de conexiones que una agrupación conservará en un momento dado.
numHelperThreads
8
El número de subprocesos auxiliares que se van a generar. Generalmente, las operaciones JDBC lentas las realizan subprocesos auxiliares que no contienen bloqueos de contención. La distribución de estas operaciones en varios subprocesos puede mejorar significativamente el rendimiento, ya que permitirá que varias operaciones se realicen simultáneamente.
password
<contraseña única>
La contraseña que se utiliza para conectarse a la base de datos.
testConnectionOnCheckout
falso
Si es true, se realizará una operación en cada extracción de conexión para verificar que la conexión es válida.
unreturnedConnectionTimeout
0
El número de segundos que se debe esperar una respuesta de una conexión que no responde antes de descartarla. Si se define y una aplicación extrae una conexión, pero no la archiva dentro del período de tiempo especificado, la agrupación descartará la conexión. De este modo, las aplicaciones con pérdidas ocasionales de conexión persistirán, en lugar de agotar la agrupación de conexión. Cero significa ningún tiempo de espera y las aplicaciones deberán cerrar sus propias conexiones.
username
twadmin
El usuario que tiene permiso para modificar las tablas. Se trata del usuario que se ha creado en la base de datos para el servidor de ThingWorx.
* 
Para cambiar la contraseña de PostgreSQL, es necesario cambiar la contraseña del usuario y también cambiar la configuración de contraseña no cifrada en el fichero platform-settings.json o el valor cifrado en el keystore /ThingworxStorage/keystore.jks.
Configuración del procesador de flujos
maximumBlockSize
2500
El número máximo de escrituras de flujo que se van a procesar en un bloque.
maximumQueueSize
250000
El número máximo de entradas de flujo que pueden existir en cola (las posteriores se rechazarán).
maximumWaitTime
10000
Número de milisegundos que el sistema espera antes de vaciar el búfer de flujo.
numberOfProcessingThreads
5
Número de subprocesos de procesamiento.
scanRate
5
El estado de búfer se verifica con el valor de velocidad especificado en milisegundos.
sizeThreshold
1000
Número máximo de elementos que se pueden acumular antes de vaciar el búfer de flujo.
Configuración de procesador de flujo de valores
maximumBlockSize
2500
Número máximo de escrituras de flujo de valores para procesar en un bloque.
maximumQueueSize
500000
Número máximo de entradas de flujo de valor que pueden existir en cola (las posteriores se rechazarán).
maximumWaitTime
10000
Número de milisegundos que el sistema espera antes de vaciar el búfer de flujo de valor.
numberofProcessingThreads
5
Número de subprocesos de procesamiento.
scanRate
5
La velocidad (en milisegundos) antes de vaciar el búfer de flujo.
sizeThreshold
1000
Número máximo de elementos que se pueden acumular antes de vaciar el búfer de flujo de valor.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
El número máximo de escrituras de propiedad para procesar en un bloque.
maximumWaitTime
1000
El tiempo de espera máximo (en milisegundos) antes de vaciar el búfer de propiedad.
maximumQueueSize
100000
El número máximo de entradas de propiedad que pueden existir en cola (las posteriores se rechazarán).
numberOfProcessingThreads
20
El número de subprocesos que se deben utilizar al procesar propiedades.
scanRate
25
La velocidad (en milisegundos) con la que se debe verificar el estado del búfer.
sizeThreshold
1000
El número máximo de elementos que se pueden acumular antes de vaciar el búfer de propiedad.
MssqlPersistenceProviderPackage
Configuración
Por defecto
Descripción
ConnectionInformation
acquireIncrement
5
Permite determinar el número de conexiones que ThingWorx intentará adquirir a la vez cuando la agrupación se agote.
acquireRetryAttempts
3
Permite definir cuántas veces ThingWorx intentará adquirir una nueva conexión de la base de datos antes de abandonar.
acquireRetryDelay
10000
El tiempo (en milisegundos) que ThingWorx esperará entre los intentos de adquisición.
checkoutTimeout
1000000
El número de milisegundos que un cliente que llama a getConnection() esperará a que se archive o adquiera una conexión cuando la agrupación se agote.
driverClass
com.microsoft.sqlserver.jdbc.SQLServerDriver
El nombre de clase completo de JDBC driverClass que se espera que proporcione las conexiones.
fetchSize
5000
El número de filas que se debe capturar por lotes en lugar del almacenamiento en caché de todas las filas en el lado del cliente.
idleConnectionTestPeriod
60
El período de tiempo (en segundos) durante el que se probarán las conexiones de modo que las conexiones inactivas no se cerrarán desde procesos externos, como barreras de seguridad, etc. Si se trata de un número mayor que 0, ThingWorx probará todas las conexiones inactivas, agrupadas pero no extraídas, cada x segundos.
* 
Si se produce errores de tipo "Sin conexión con el proveedor de modelos", revise esta configuración. Compárela con los valores por defecto de la barrera de seguridad. Al disminuir el valor por defecto, se reducirán las incidencias de desconexión.
initialPoolSize
5
Número inicial de conexiones de base de datos creadas y conservadas dentro de una agrupación durante el arranque. Debe estar entre minPoolSize y maxPoolSize.
jdbcUrl
jdbc:sqlserver://localhost:1433;databaseName=thingworx;applicationName=Thingworx;
El URL de jdbc que se utiliza para conectar con MSSQL.
maxConnectionAge
0
Segundos, efectivamente un período de vida. Una conexión más antigua que maxConnectionAge se destruirá y se depurará de la agrupación.
maxIdleTime
0
Segundos que una conexión puede permanecer en la agrupación, pero sin utilizar, antes de que se descarte. Cero significa que las conexiones inactivas nunca vencen.
maxIdleTimeExcessConnections
300
El número de segundos que debe permitirse que las conexiones en exceso de minPoolSize permanezcan inactivas en la agrupación antes de que se seleccionen. Está previsto para las aplicaciones que desean minimizar agresivamente el número de conexiones abiertas, reduciendo la agrupación de nuevo a minPoolSize si, después de un pico, disminuye el nivel de carga y ya no se necesitan las conexiones adquiridas. Si se define maxIdleTime, maxIdleTimeExcessConnections debe ser inferior para que surta efecto. Si se define en cero, significa que no hay ninguna aplicación y que las conexiones en exceso no se desactivan.
maxPoolSize
100
El número máximo de conexiones que una agrupación conservará en un momento dado.
maxStatements
100
El tamaño de la caché PreparedStatement global de ThingWorx.
minPoolSize
5
El número mínimo de conexiones que una agrupación conservará en un momento dado.
numHelperThreads
8
El número de subprocesos auxiliares que se van a generar. Generalmente, las operaciones JDBC lentas las realizan subprocesos auxiliares que no contienen bloqueos de contención. La distribución de estas operaciones en varios subprocesos puede mejorar significativamente el rendimiento, ya que permitirá que varias operaciones se realicen simultáneamente.
password
<contraseña única>
La contraseña para conectarse a la base de datos.
testConnectionOnCheckout
falso
Si es true, se realizará una operación en cada extracción de conexión para verificar que la conexión es válida.
unreturnedConnectionTimeout
0
El número de segundos que se debe esperar una respuesta de una conexión que no responde antes de descartarla. Si se define y una aplicación extrae una conexión, pero no la archiva dentro del período de tiempo especificado, la agrupación descartará la conexión. De este modo, las aplicaciones con pérdidas ocasionales de conexión persistirán, en lugar de agotar la agrupación de conexión. Cero significa ningún tiempo de espera y las aplicaciones deberán cerrar sus propias conexiones.
username
msadmin
Se trata del ID de usuario que es propietario del esquema TWSCHEMA y se utiliza para la autenticación en MSSQL en la cadena de conexión JDBC.
Configuración del procesador de flujos
maximumBlockSize
2500
El número máximo de escrituras de flujo que se van a procesar en un bloque.
maximumQueueSize
250000
El número máximo de entradas de flujo que pueden existir en cola (las posteriores se rechazarán).
maximumWaitTime
10000
Número de milisegundos que el sistema espera antes de vaciar el búfer de flujo.
numberOfProcessingThreads
5
Número de subprocesos de procesamiento.
scanRate
5
El estado de búfer se verifica con el valor de velocidad especificado en milisegundos.
sizeThreshold
1000
Número máximo de elementos que se pueden acumular antes de vaciar el búfer de flujo.
Configuración de procesador de flujo de valores
maximumBlockSize
2500
Número máximo de escrituras de flujo de valores para procesar en un bloque.
maximumWaitTime
10000
Número de milisegundos que el sistema espera antes de vaciar el búfer de flujo de valor.
maximumQueueSize
500000
Número máximo de entradas de flujo de valor que pueden existir en cola (las posteriores se rechazarán).
numberofProcessingThreads
5
Número de subprocesos de procesamiento.
scanRate
5
La velocidad (en milisegundos) antes de vaciar el búfer de flujo.
sizeThreshold
1000
Número máximo de elementos que se pueden acumular antes de vaciar el búfer de flujo de valor.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
El número máximo de escrituras de propiedad para procesar en un bloque.
maximumWaitTime
1000
El tiempo de espera máximo (en milisegundos) antes de vaciar el búfer de propiedad.
maximumQueueSize
100000
El número máximo de entradas de propiedad que pueden existir en cola (las posteriores se rechazarán).
numberOfProcessingThreads
20
El número de subprocesos que se deben utilizar al procesar propiedades.
scanRate
25
La velocidad (en milisegundos) con la que se debe verificar el estado del búfer.
sizeThreshold
1000
El número máximo de elementos que se pueden acumular antes de vaciar el búfer de propiedad.