Installazione e configurazione > Installazione di ThingWorx > Appendici relative all'installazione > Dettagli di configurazione di platform-settings.json
Dettagli di configurazione di platform-settings.json
Il file platform-settings.json consente agli amministratori di regolare le impostazioni di ottimizzazione ed è disponibile nel download del software.
* 
L'esempio riportato di seguito contiene tutte le opzioni. È richiesto un solo provider di persistenza.
{
"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
}
}
}
}
Opzioni di platform-settings.json
Per tutti i database elencati di seguito, attenersi alle linee guida riportate di seguito per le impostazioni del processore degli stream e degli stream di valori.
StreamProcessorSettings.numberOfProcessingThreads + ValueStreamProcessorSettings.numberOfProcessingThreads < 50% of DB connection pool
And
ValueStreamProcessorSettings.numberOfProcessingThreads >= StreamProcessorSettings.numberOfProcessingThreads
Impostazioni di base
Impostazione
Default
Descrizione
BackupStorage
/ThingworxBackupStorage
Nome della directory in cui vengono scritti tutti i backup.
DatabaseLogRetentionPolicy
7
Numero di giorni in cui vengono conservati i log del database.
EnableBackup
true
Determina se i backup vengono conservati.
EnableHA
false
Determina se ThingWorx può essere configurato per un panorama a disponibilità elevata.
EnableSystemLogging
false
Determina se la registrazione del sistema è attivata.
* 
Non attivare questa opzione a meno che non venga richiesto dal Supporto ThingWorx.
EnableSSO
false
Impostare su true per attivare l'SSO per ThingWorx Platform. Quando l'SSO è attivato, qualsiasi l'autenticazione viene reindirizzata al server di autorizzazione centrale configurato nel file sso-settings.json. L'autenticazione WebSocket Edge non viene modificata.
FileRepositoryRoot
/ThingworxStorage
La directory in cui viene creato il repository di file radice. Il percorso di default è sufficiente per le distribuzioni autonome. Per le distribuzioni a disponibilità elevata di ThingWorx, è consigliabile posizionare il repository in un file system condiviso a cui tutti i server ThingWorx abbiano accesso.
HTTPRequestHeaderMaxLength
2000
La lunghezza massima consentita per i valori delle intestazioni della richiesta HTTP.
HTTPRequestParameterMaxLength
2000
La lunghezza massima consentita per i valori dei parametri della richiesta HTTP.
InternalAesCryptographicKeyLength
128
Lunghezza della chiave utilizzata durante la generazione di una chiave AES simmetrica. I valori supportati sono 128, 192 e 256.
* 
Se la lunghezza della chiave è superiore a 128 e i criteri di Java non sono configurati per supportare tale dimensione, la crittografia e la decrittografia hanno esito negativo.
Storage
/ThingworxStorage
Directory in cui tutte le directory di archiviazione vengono create/posizionate, esclusa l'archiviazione dei backup.
ScriptTimeout
30
Numero massimo di secondi per i quali uno script può essere eseguito prima che ThingWorx Platform lo termini.
* 
Gli script nella piattaforma vengono terminati automaticamente se la relativa esecuzione richiede un tempo superiore al numero di secondi configurato per questo timeout.
* 
Considerare la sensibilità e/o l'importanza delle informazioni gestite dagli script durante la configurazione della durata del timeout. Sebbene sia importante terminare gli script dopo un determinato periodo di tempo per motivi di sicurezza, è possibile che questa operazione conduca prematuramente a una perdita di dati. A causa della flessibilità di ThingWorx Platform esistono casi di utilizzo che potrebbero richiedere periodi di timeout più brevi o più lunghi rispetto al valore di default.
Impostazioni di Solution Central
Impostazione
Default
Descrizione
SolutionCentralHost
sc.thingworx.com
Nome host Solution Central.
SolutionCentralPort
443
Dettagli porta Solution Central.
* 
Non impostare SolutionCentralPort se ha un valore di default.
KeyStorePath
/ThingworxPlatform/sc-keystore
Percorso del keystore.
KeyStorePass
Nessuno
Password del keystore.
* 
Per crittografare la password, impostare KeyStorePass su encrypt.sc.password.
Impostazioni di ThingWorx Flow
Queste proprietà sono applicabili solo se in ThingWorx Foundation è installato ThingWorx Flow. I valori devono essere definiti sia nei file di configurazione ThingWorx Flow che RabbitMQ e possono essere modificati solo se la modifica avviene in entrambe le applicazioni.
Impostazione
Default
Descrizione
EnableOrchestration
true
Indica se ThingWorx Flow è attivato in ThingWorx Foundation.
QueueHost
host locale
Nome host RabbitMQ
QueuePort
5672
Porta RabbitMQ
QueueName
256mb
Nome coda RabbitMQ
QueueUsername
flowuser
Nome utente coda RabbitMQ
QueuePassword
encrypt.queue.password
Password coda RabbitMQ
* 
La password viene crittografata automaticamente durante l'installazione di ThingWorx Flow nello stesso computer di ThingWorx Foundation.
Se ThingWorx Flow viene installato in un computer diverso da ThingWorx Foundation, è necessario crittografare la password.
QueueVHost
orchestration
Nome VHost RabbitMQ
Regola di importazione di package di estensioni
Per default, l'importazione delle estensioni è disattivata per tutti gli utenti. Utilizzare le impostazioni seguenti per configurare la funzionalità di importazione delle estensioni. Per ulteriori informazioni, fare riferimento a Importazione di estensioni.
Impostazione
Descrizione
Default
Esempi
importEnabled
Controllo di livello superiore che rappresenta la capacità di importare (=true) o non importare (=false) le estensioni.
false
"importEnabled": false - Non è possibile importare le estensioni, anche se altre impostazioni di ExtensionPackageImportPolicy sono impostate su true.
"importEnabled": true - Trasmette l'importazione delle estensioni all'insieme successivo di impostazioni di allow<Content>Resources (vedere le righe di seguito).
* 
Se le impostazioni di allow<Content>Resources sono false, è possibile importare un'estensione vuota (nessuna entità, entità estendibili o risorse). Poiché probabilmente non è una configurazione utile, se importEnabled è impostato su true, almeno un'altra impostazione di allow<Content>Resources deve essere impostata su true.
allowJarResources
Consente di importare le estensioni con risorse JAR.
false
"allowJarResources": true - Consente di importare le estensioni che dichiarano i file JAR nel manifest come risorse JAR.
"allowJarResources": false - Non consente di importare le estensioni che dichiarano i file JAR nel manifest come risorse JAR.
allowJavascriptResources
Consente di importare le estensioni con risorse JavaScript.
false
"allowJavascriptResources": true - Consente di importare le estensioni che dichiarano le risorse del file dell'interfaccia utente JavaScript nel manifest come risorse JavaScript.
"allowJavascriptResources": false - Non consente di importare le estensioni che dichiarano le risorse del file dell'interfaccia utente JavaScript nel manifest come risorse JavaScript.
allowCSSResources
Consente di importare le estensioni con risorse CSS.
false
"allowCSSResources": true - Consente di importare le estensioni che contengono le risorse del file dell'interfaccia utente CSS.
"allowCSSResources": false - Non consente di importare le estensioni che contengono le risorse del file dell'interfaccia utente CSS.
allowJSONResources
Consente di importare le estensioni con risorse JSON (ad esempio file di localizzazione).
false
"allowJSONResources": true - Consente di importare le estensioni che contengono le risorse del file dell'interfaccia utente JSON.
"allowJSONResources": false - Non consente di importare le estensioni che contengono le risorse del file dell'interfaccia utente JSON.
allowWebAppResources
Consente di importare le estensioni con risorse Web.
false
"allowWebAppResources": true - Consente di importare le estensioni che contengono le risorse del file dell'interfaccia utente dell'app Web.
"allowWebAppResources": false - Non consente di importare le estensioni che contengono le risorse del file dell'interfaccia utente dell'app Web.
allowEntities
Consente di importare le estensioni con entità non estendibili. Tra gli esempi di entità non estendibili figurano:
Chiave di accesso
Autenticatore
Dashboard
Definizione analisi dati
Data shape
GenericContentEntity e classi figlio derivate come Definizione stato, Definizione stile, Tema stile
Gruppo
Tabella di localizzazione
Log
Mashup
Entità multimediale
Menu
ModeledServiceProviderEntity e classi figlio come Contenuto notifica
Rete
Definizione notifica
Organizzazione
Provider di persistenza
PersistenceProviderPackage e classi figlio derivate
Progetto
Thing shape
Modello di oggetto
Utente
Vocabolario e classi figlio derivate come Vocabolario tag dati e Vocabolari tag modello
false
"allowEntities": true - Consente di importare le estensioni che dichiarano entità non estendibili nel manifest.
"allowEntities": false - Non consente di importare le estensioni che dichiarano entità non estendibili nel manifest.
allowExtensibleEntities
Consente di importare le estensioni con entità non estendibili. Tra gli esempi di entità estendibili figurano:
DirectoryService e classi figlio derivate
ExtensionPackage
Risorsa e classi figlio derivate che contengono funzioni/servizi personalizzati utilizzati come risorse simili alle risorse pronte all'uso come InfoTableFunctions, EntityServices ed EncryptionServices.
* 
I sottosistemi pronti all'uso che non fanno parte delle estensioni non sono interessati.
ScriptFunctionLibrary e classi figlio derivate.
Sottosistema e classi figlio derivate.
* 
I sottosistemi pronti all'uso che non fanno parte delle estensioni non sono interessati.
Package oggetto
Widget
false
"allowExtensibleEntities": true - Non consente di importare le estensioni che dichiarano entità estendibili nel manifest.
"allowExtensibleEntities": false - Non consente di importare le estensioni che dichiarano entità estendibili nel manifest.
Impostazioni di disponibilità elevata
Impostazioni specifiche per la configurazione di un ambiente a disponibilità elevata (HA, High Availability). Tutte le impostazioni vengono ignorate se l'impostazione EnableHA soprastante è impostata su false. È necessario modificare CoordinatorHosts e LoadBalancerBase64EncodedCredentials in base all'ambiente in uso.
Impostazione
Default
Descrizione
CoordinatorConnectionTimeout
15000
Intervallo di attesa (in millisecondi) per stabilire una connessione con il servizio Apache ZooKeeper utilizzato per coordinare la priorità di ThingWorx.
CoordinatorHosts
127.0.0.1:2181
Elenco delimitato da virgole dei server Apache ZooKeeper utilizzato per coordinare l'elezione della priorità di ThingWorx. Lo schema della stringa è IP:porta (ad esempio "127.0.0.1:2181, 127.0.0.2:2181").
CoordinatorMaxRetries
3
Numero massimo consentito di tentativi effettuati per stabilire una connessione con il server Apache ZooKeeper utilizzato per coordinare la priorità di ThingWorx.
CoordinatorRetryTimeout
1000
Intervallo di attesa (in millisecondi) per ogni nuovo tentativo.
CoordinatorSessionTimeout
90000
Tempo (in millisecondi) che ThingWorx attende senza ricevere un "heartbeat" dal servizio Apache ZooKeeper utilizzato per coordinare la priorità di ThingWorx.
CoordinatorZNode
/HALeadershipCoordinator
Quando più distribuzioni di ThingWorx a disponibilità elevata condividono un unico servizio Apache ZooKeeper, questa impostazione deve fornire un valore univoco per ogni distribuzione di ThingWorx a disponibilità elevata. Il valore di questa impostazione può essere arbitrario ma deve attenersi al formato /<qualsiasiTestoQui>. Si supponga ad esempio che le istanze di ThingWorx TWX1 e TWX2 si trovino nel sistema a disponibilità elevata A e che le istanze di ThingWorx TWX3 e TWX4 si trovino nel sistema a disponibilità elevata B. CoordinatorZNode viene impostato su /HAsystemA per le istanze TWX1 e TWX2 e su /HAsystemB per le istanze TWX3 e TWX4.
LoadBalancerBase64EncodedCredentials
QWRtaW5pc3RyYXRvcjphZG1pbg==
Credenziali con codifica Base64 per il servizio di bilanciamento del carico HA nel formato <utente>:<password univoca>
* 
Non utilizzare un utente ThingWorx.
* 
È possibile utilizzare qualsiasi utilità in cui Base64 codifichi la stringa <utente>:<password univoca> corrispondente utilizzata nell'impostazione del servizio di bilanciamento del carico.
Impostazioni dell'utente amministratore
Impostazione
Default
Descrizione
InitialPassword
n/d
Password di amministratore iniziale richiesta al primo accesso a ThingWorx. La lunghezza minima può essere configurata nel sottosistema Gestione utenti (minimo 10 caratteri e impostazione di default di 14 caratteri). Per ulteriori informazioni, vedere Password.
Impostazioni del tipo di contenuto
Impostazione
Default
Descrizione
supportedMediaEntityContentTypes
"image/svg+xml","image/png","image/gif","image/bmp","image/jpeg","application/pdf","image/vnd.microsoft.icon"
Elenco delimitato da virgole di tipi di contenuto MIME validi che possono essere collegati dinamicamente alle entità multimediali. È possibile aggiungere altri tipi.
* 
Se il tipo di contenuto proveniente da un server diverso non è un tipo di entità multimediale supportato, viene scaricato come file sul computer client anziché in streaming con l'entità multimediale.
Impostazioni di connessione della licenza
Impostazione
Default
Descrizione
username
n/d
Nome utente del sito Supporto PTC
password
n/d
Password del sito Supporto PTC
timeout (in secondi)
60
Dopo il periodo di timeout, nel log applicazioni viene registrato l'errore riportato di seguito.
License Server could not process request
useProxy
false
Attiva le impostazioni proxy per la gestione delle licenze. Se è impostato su true, le impostazioni proxy vengono utilizzate per la connessione al server delle licenze.
proxyHost
Nome dell'host proxy.
proxyPort
Numero di porta dell'host proxy.
proxyScheme
http
http o https
proxyUsername
Nome utente per l'autenticazione, se la connessione al server proxy richiede l'autenticazione.
proxyPassword
Password per l'autenticazione, se la connessione al server proxy richiede l'autenticazione.
* 
Per informazioni sulla crittografia di questo valore, vedere Crittografia delle password.
proxyUseNTLM
false
Opzione per utilizzare il protocollo NTLM.
proxyWorkstation
Nome del computer dell'utente nella rete, se è richiesta l'autenticazione NTLM.
proxyDomain
Nome del dominio dell'utente, se è richiesta l'autenticazione NTLM.
NeoPersistenceProviderPackage
Contiene le impostazioni del provider di persistenza specifiche per Neo4j. Se Neo4j non è il provider di persistenza, questa sezione deve essere interamente ignorata.
Impostazione
Default
Descrizione
StreamProcessorSettings
maximumBlockSize
2500
Numero massimo di scritture dello stream da elaborare in un unico blocco.
maximumQueueSize
250000
Numero massimo di voci di stream da accodare (le voci successive vengono rifiutate).
maximumWaitTime
10000
Tempo massimo di attesa (in millisecondi) prima di scaricare il buffer dello stream.
scanRate
5
Frequenza (in millisecondi) in base a cui controllare lo stato del buffer.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer dello stream.
ValueStreamProcessorSettings
maximumBlockSize
2500
Numero massimo di scritture dello stream da elaborare in un unico blocco.
maximumQueueSize
500000
Numero massimo di voci di stream da accodare (le voci successive vengono rifiutate).
maximumWaitTime
10000
Tempo massimo di attesa (in millisecondi) prima di scaricare il buffer dello stream.
scanRate
5
Frequenza (in millisecondi) in base a cui controllare lo stato del buffer.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer dello stream.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
Numero massimo di scritture di proprietà da elaborare in un unico blocco.
maximumWaitTime
1000
Tempo massimo di attesa (in millisecondi) prima di scaricare il buffer delle proprietà.
maximumQueueSize
100000
Numero massimo di voci di proprietà da accodare (le voci successive vengono rifiutate).
numberOfProcessingThreads
20
Numero di thread da utilizzare durante l'elaborazione delle proprietà.
scanRate
25
Frequenza (in millisecondi) in base a cui controllare lo stato del buffer.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer delle proprietà.
H2PersistenceProviderPackage
Impostazione
Default
Descrizione
Informazioni di connessione
acquireIncrement
5
Determina quante connessioni alla volta ThingWorx tenta di acquisire quando il pool è esaurito.
acquireRetryAttempts
30
Definisce il numero di volte che ThingWorx tenta di acquisire una nuova connessione dal database prima di rinunciare.
acquireRetryDelay
1000
Tempo (in millisecondi) che ThingWorx attende tra un tentativo di acquisizione e l'altro.
checkoutTimeout
1000000
Numero di millisecondi che un cliente che chiama getConnection() attende prima del Check-In o dell'acquisizione di una connessione quando il pool è esaurito.
idleConnectionTestPeriod
6
Periodo di tempo (in secondi) in cui le connessioni vengono testate in modo che le connessioni inattive non vengano chiuse da processi esterni come firewall, ecc. Se questo numero è maggiore di 0, ThingWorx testa tutte le connessioni inattive, raggruppate nel pool ma con Check-Out annullato, ogni x numero di secondi.
* 
Se vengono visualizzati errori di tipo "Nessuna connessione al provider di modelli", rivedere questa impostazione. Confrontare con i valori di default del firewall. Riducendo i valori di default, si riducono i problemi di disconnessione.
initialPoolSize
10
Numero di connessioni al database iniziali create e gestite all'interno di un pool all'avvio. È consigliabile impostare un valore compreso tra minPoolSize e maxPoolSize.
maxConnectionAge
0
Secondi, durata effettiva. Una connessione antecedente a maxConnectionAge viene eliminata e rimossa dal pool.
maxIdleTime
0
Secondi in cui una connessione può rimanere in pool anche se inutilizzata prima che venga rimossa. Il valore zero indica che le connessioni inattive non scadono mai.
maxIdleTimeExcessConnections
36000
Numero di secondi durante i quali alle connessioni in eccesso di minPoolSize è consentito di rimanere inattive nel pool prima che vengano rimosse. Destinato alle applicazioni che desiderano ridurre notevolmente il numero di connessioni aperte, restringendo il pool al valore di minPoolSize se, in seguito a un picco, il livello di carico diminuisce e le connessioni acquisite non sono più necessarie. Se maxIdleTime è impostata, è consigliabile che maxIdleTimeExcessConnections sia inferiore per produrre un qualche effetto. L'impostazione di questa opzione su zero indica che non vi sono applicazioni e che le connessioni in eccesso non vengono rese in attive.
maxPoolSize
100
Numero massimo di connessioni gestite da un pool in un determinato momento.
maxStatements
0
Dimensione della cache PreparedStatement globale di ThingWorx.
maxStatementsPerConnection
50
Dimensione della cache PreparedStatement globale di ThingWorx per ogni connessione.
minPoolSize
5
Numero minimo di connessioni gestite da un pool in un determinato momento.
numHelperThreads
6
Numero di thread di helper da generare. Le operazioni JDBC lente vengono eseguite in genere dai thread di helper che non detengono blocchi contesi. La distribuzione di queste operazioni su più thread può migliorare notevolmente le prestazioni consentendo l'esecuzione simultanea di più operazioni.
password
n/d
Password del database.
username
twadmin
Nome utente del database.
tableLockTimeout
10000
Numero di millisecondi per cui un client attende lo sblocco di una tabella di database.
testConnectionOnCheckout
false
Se true, viene eseguita un'operazione ad ogni Check-Out di connessione per verificare che la connessione sia valida.
unreturnedConnectionTimeout
0
Numero di secondi per cui attendere una risposta da una connessione che non risponde prima di rimuoverla. Se impostata, se un'applicazione effettua il Check-Out di una connessione ma non riesce a effettuarne il Check-In entro il periodo di tempo specificato, il pool rimuove la connessione. Ciò consente alle applicazioni con occasionali perdite di connessione di sopravvivere, anziché finire per esaurire il pool di connessioni. Il valore zero indica l'assenza di timeout, quindi è previsto che le applicazioni chiudano le proprie connessioni.
StreamProcessorSettings
maximumBlockSize
2500
Numero massimo di scritture dello stream da elaborare in un unico blocco.
maximumQueueSize
250000
Numero massimo di voci di stream da accodare (le voci successive vengono rifiutate).
maximumWaitTime
10000
Tempo massimo di attesa (in millisecondi) prima di scaricare il buffer dello stream.
numberOfProcessingThreads
5
Numero di thread da utilizzare durante l'elaborazione delle proprietà.
scanRate
5
Frequenza (in millisecondi) in base a cui controllare lo stato del buffer.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer dello stream.
ValueStreamProcessorSettings
maximumBlockSize
2500
Numero massimo di scritture dello stream da elaborare in un unico blocco.
maximumQueueSize
250000
Numero massimo di voci di stream da accodare (le voci successive vengono rifiutate).
maximumWaitTime
10000
Tempo massimo di attesa (in millisecondi) prima di scaricare il buffer dello stream.
numberOfProcessingThreads
5
Numero di thread da utilizzare durante l'elaborazione delle proprietà.
scanRate
5
Frequenza (in millisecondi) in base a cui controllare lo stato del buffer.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer dello stream.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
Numero massimo di scritture di proprietà da elaborare in un unico blocco.
maximumWaitTime
1000
Tempo massimo di attesa (in millisecondi) prima di scaricare il buffer delle proprietà.
maximumQueueSize
100000
Numero massimo di voci di proprietà da accodare (le voci successive vengono rifiutate).
numberOfProcessingThreads
20
Numero di thread da utilizzare durante l'elaborazione delle proprietà.
scanRate
25
Frequenza (in millisecondi) in base a cui controllare lo stato del buffer.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer delle proprietà.
PostgresPersistenceProviderPackage
Impostazione
Default
Descrizione
ConnectionInformation
acquireIncrement
5
Determina quante connessioni alla volta la piattaforma tenta di acquisire quando il pool è esaurito.
acquireRetryAttempts
3
Definisce il numero di volte che ThingWorx tenta di acquisire una nuova connessione dal database prima di rinunciare.
acquireRetryDelay
10000
Tempo (in millisecondi) che ThingWorx attende tra un tentativo di acquisizione e l'altro.
checkoutTimeout
10000000
Numero di millisecondi che un cliente che chiama getConnection() attende prima del Check-In o dell'acquisizione di una connessione quando il pool è esaurito.
driverClass
org.postgresql.Driver
Nome completo della classe del driver JDBC che deve fornire le connessioni.
fetchSize
5000
Conteggio delle righe da recuperare in batch invece di memorizzare nella cache tutte le righe sul lato client.
idleConnectionTestPeriod
60
Se questo numero è maggiore di 0, ThingWorx testa tutte le connessioni inattive, raggruppate in pool ma con Check-Out annullato, ogni x numero di secondi.
initialPoolSize
5
Numero di connessioni al database iniziali create e gestite all'interno di un pool all'avvio. È consigliabile impostare un valore compreso tra minPoolSize e maxPoolSize.
jdbcUrl
jdbc:postgresql://localhost:5432/thingworx
URL jdbc utilizzato per connettersi a PostgreSQL.
* 
Se il nome dello schema di default viene modificato (da pubblico), è necessario aggiungere <nomedatabase>?currentSchema=<nome dello schema>. Se, ad esempio, il nome dello schema è mySchema, la stringa è come indicato di seguito. jdbc:postgresql://<DBServer>:<DBPort>/<databasename>?currentSchema=mySchema
* 
Se si configura una soluzione a disponibilità elevata, questa stringa deve riflettere l'IP del server in cui il processo pgPool è in esecuzione. Modificare la porta con la porta servita da pgPool.
maxConnectionAge
0
Secondi, durata effettiva. Una connessione antecedente a maxConnectionAge viene eliminata e rimossa dal pool.
maxIdleTime
0
Secondi in cui una connessione può rimanere in pool anche se inutilizzata prima che venga rimossa. Il valore zero indica che le connessioni inattive non scadono mai.
maxIdleTimeExcessConnections
300
Numero di secondi durante i quali alle connessioni in eccesso di minPoolSize è consentito di rimanere inattive nel pool prima che vengano rimosse. Destinato alle applicazioni che desiderano ridurre notevolmente il numero di connessioni aperte, restringendo il pool al valore di minPoolSize se, in seguito a un picco, il livello di carico diminuisce e le connessioni acquisite non sono più necessarie. Se maxIdleTime è impostata, è consigliabile che maxIdleTimeExcessConnections sia inferiore per produrre un qualche effetto. L'impostazione di questa opzione su zero indica che non vi sono applicazioni e che le connessioni in eccesso non vengono rese in attive.
maxPoolSize
100
Numero massimo di connessioni gestite da un pool in un determinato momento.
maxStatements
100
Dimensione della cache PreparedStatement globale di ThingWorx.
minPoolSize
5
Numero minimo di connessioni gestite da un pool in un determinato momento.
numHelperThreads
8
Numero di thread di helper da generare. Le operazioni JDBC lente vengono eseguite in genere dai thread di helper che non detengono blocchi contesi. La distribuzione di queste operazioni su più thread può migliorare notevolmente le prestazioni consentendo l'esecuzione simultanea di più operazioni.
password
<password univoca>
Password utilizzata per accedere al database.
testConnectionOnCheckout
false
Se true, viene eseguita un'operazione ad ogni Check-Out di connessione per verificare che la connessione sia valida.
unreturnedConnectionTimeout
0
Numero di secondi per cui attendere una risposta da una connessione che non risponde prima di rimuoverla. Se impostata, se un'applicazione effettua il Check-Out di una connessione ma non riesce a effettuarne il Check-In entro il periodo di tempo specificato, il pool rimuove la connessione. Ciò consente alle applicazioni con occasionali perdite di connessione di sopravvivere, anziché finire per esaurire il pool di connessioni. Il valore zero indica l'assenza di timeout, quindi è previsto che le applicazioni chiudano le proprie connessioni.
username
twadmin
Utente dotato del privilegio per modificare le tabelle. Si tratta dell'utente creato nel database per il server ThingWorx.
* 
Per modificare la password di PostgreSQL: modificare la password di questo utente e anche l'impostazione della password non crittografata nel file platform-settings.json o il valore crittografato nel keystore /ThingworxStorage/keystore.jks.
Impostazioni del processore dello stream
maximumBlockSize
2500
Numero massimo di scritture dello stream da elaborare in un unico blocco.
maximumQueueSize
250000
Numero massimo di voci di stream da accodare (le voci successive vengono rifiutate).
maximumWaitTime
10000
Numero di millisecondi che il sistema attende prima di scaricare il buffer dello stream.
numberOfProcessingThreads
5
Numero di thread di elaborazione.
scanRate
5
Lo stato del buffer viene controllato in base al valore della frequenza specificata in millisecondi.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer dello stream.
Impostazioni processore stream valori
maximumBlockSize
2500
Numero massimo di scritture dello stream di valori da elaborare in un unico blocco.
maximumQueueSize
500000
Numero massimo di voci di stream di valori da accodare (le voci successive vengono rifiutate).
maximumWaitTime
10000
Numero di millisecondi che il sistema attende prima di scaricare il buffer dello stream di valori.
numberofProcessingThreads
5
Numero di thread di elaborazione.
scanRate
5
Frequenza dell'analisi (in millisecondi) prima di scaricare il buffer dello stream.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer dello stream di valori.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
Numero massimo di scritture di proprietà da elaborare in un unico blocco.
maximumWaitTime
1000
Tempo massimo di attesa (in millisecondi) prima di scaricare il buffer delle proprietà.
maximumQueueSize
100000
Numero massimo di voci di proprietà da accodare (le voci successive vengono rifiutate).
numberOfProcessingThreads
20
Numero di thread da utilizzare durante l'elaborazione delle proprietà.
scanRate
25
Frequenza (in millisecondi) in base a cui controllare lo stato del buffer.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer delle proprietà.
MssqlPersistenceProviderPackage
Impostazione
Default
Descrizione
ConnectionInformation
acquireIncrement
5
Determina quante connessioni alla volta ThingWorx tenta di acquisire quando il pool è esaurito.
acquireRetryAttempts
3
Definisce il numero di volte che ThingWorx tenta di acquisire una nuova connessione dal database prima di rinunciare.
acquireRetryDelay
10000
Tempo (in millisecondi) che ThingWorx attende tra un tentativo di acquisizione e l'altro.
checkoutTimeout
1000000
Numero di millisecondi che un cliente che chiama getConnection() attende prima del Check-In o dell'acquisizione di una connessione quando il pool è esaurito.
driverClass
com.microsoft.sqlserver.jdbc.SQLServerDriver
Nome completo della classe del driver JDBC che deve fornire le connessioni.
fetchSize
5000
Conteggio delle righe da recuperare in batch invece di memorizzare nella cache tutte le righe sul lato client.
idleConnectionTestPeriod
60
Periodo di tempo (in secondi) in cui le connessioni vengono testate in modo che le connessioni inattive non vengano chiuse da processi esterni come firewall, ecc. Se questo numero è maggiore di 0, ThingWorx testa tutte le connessioni inattive, raggruppate nel pool ma con Check-Out annullato, ogni x numero di secondi.
* 
Se vengono visualizzati errori di tipo "Nessuna connessione al provider di modelli", rivedere questa impostazione. Confrontare con i valori di default del firewall. Riducendo i valori di default, si riducono i problemi di disconnessione.
initialPoolSize
5
Numero di connessioni al database iniziali create e gestite all'interno di un pool all'avvio. È consigliabile impostare un valore compreso tra minPoolSize e maxPoolSize.
jdbcUrl
jdbc:sqlserver://localhost:1433;databaseName=thingworx;applicationName=Thingworx;
L'URL jdbc utilizzato per connettersi a MSSQL.
maxConnectionAge
0
Secondi, durata effettiva. Una connessione antecedente a maxConnectionAge viene eliminata e rimossa dal pool.
maxIdleTime
0
Secondi in cui una connessione può rimanere in pool anche se inutilizzata prima che venga rimossa. Il valore zero indica che le connessioni inattive non scadono mai.
maxIdleTimeExcessConnections
300
Numero di secondi durante i quali alle connessioni in eccesso di minPoolSize è consentito di rimanere inattive nel pool prima che vengano rimosse. Destinato alle applicazioni che desiderano ridurre notevolmente il numero di connessioni aperte, restringendo il pool al valore di minPoolSize se, in seguito a un picco, il livello di carico diminuisce e le connessioni acquisite non sono più necessarie. Se maxIdleTime è impostata, è consigliabile che maxIdleTimeExcessConnections sia inferiore per produrre un qualche effetto. L'impostazione di questa opzione su zero indica che non vi sono applicazioni e che le connessioni in eccesso non vengono rese in attive.
maxPoolSize
100
Numero massimo di connessioni gestite da un pool in un determinato momento.
maxStatements
100
Dimensione della cache PreparedStatement globale di ThingWorx.
minPoolSize
5
Numero minimo di connessioni gestite da un pool in un determinato momento.
numHelperThreads
8
Numero di thread di helper da generare. Le operazioni JDBC lente vengono eseguite in genere dai thread di helper che non detengono blocchi contesi. La distribuzione di queste operazioni su più thread può migliorare notevolmente le prestazioni consentendo l'esecuzione simultanea di più operazioni.
password
<password univoca>
Password utilizzata per accedere al database.
testConnectionOnCheckout
false
Se true, viene eseguita un'operazione ad ogni Check-Out di connessione per verificare che la connessione sia valida.
unreturnedConnectionTimeout
0
Numero di secondi per cui attendere una risposta da una connessione che non risponde prima di rimuoverla. Se impostata, se un'applicazione effettua il Check-Out di una connessione ma non riesce a effettuarne il Check-In entro il periodo di tempo specificato, il pool rimuove la connessione. Ciò consente alle applicazioni con occasionali perdite di connessione di sopravvivere, anziché finire per esaurire il pool di connessioni. Il valore zero indica l'assenza di timeout, quindi è previsto che le applicazioni chiudano le proprie connessioni.
username
msadmin
Si tratta dell'ID utente che possiede lo schema TWSCHEMA e viene utilizzato per l'autenticazione con MSSQL nella stringa di connessione di JDBC.
Impostazioni del processore dello stream
maximumBlockSize
2500
Numero massimo di scritture dello stream da elaborare in un unico blocco.
maximumQueueSize
250000
Numero massimo di voci di stream da accodare (le voci successive vengono rifiutate).
maximumWaitTime
10000
Numero di millisecondi che il sistema attende prima di scaricare il buffer dello stream.
numberOfProcessingThreads
5
Numero di thread di elaborazione.
scanRate
5
Lo stato del buffer viene controllato in base al valore della frequenza specificata in millisecondi.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer dello stream.
Impostazioni processore stream valori
maximumBlockSize
2500
Numero massimo di scritture dello stream di valori da elaborare in un unico blocco.
maximumWaitTime
10000
Numero di millisecondi che il sistema attende prima di scaricare il buffer dello stream di valori.
maximumQueueSize
500000
Numero massimo di voci di stream di valori da accodare (le voci successive vengono rifiutate).
numberofProcessingThreads
5
Numero di thread di elaborazione.
scanRate
5
Frequenza dell'analisi (in millisecondi) prima di scaricare il buffer dello stream.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer dello stream di valori.
PersistentPropertyProcessorSettings
maximumBlockSize
2500
Numero massimo di scritture di proprietà da elaborare in un unico blocco.
maximumWaitTime
1000
Tempo massimo di attesa (in millisecondi) prima di scaricare il buffer delle proprietà.
maximumQueueSize
100000
Numero massimo di voci di proprietà da accodare (le voci successive vengono rifiutate).
numberOfProcessingThreads
20
Numero di thread da utilizzare durante l'elaborazione delle proprietà.
scanRate
25
Frequenza (in millisecondi) in base a cui controllare lo stato del buffer.
sizeThreshold
1000
Numero massimo di elementi da accumulare prima di scaricare il buffer delle proprietà.