Trasferimento file > Tipi di trasferimento file > Trasferimenti file controllati da edge
Trasferimenti file controllati da edge
Caricamento di file avviato da Axeda Agent/Platform 
Come mostrato nell'illustrazione,
Nel passo n. 2 vengono eseguite le convalide di input seguenti:
Se l'operazione è controllata da edge, verificare che siano stati superati il numero massimo di trasferimenti simultanei e quello di trasferimenti simultanei per oggetto.
Se non sono stati superati, l'operazione viene messa in coda per il trasferimento successivo. In caso contrario, la copia ha esito negativo e l'operazione non viene messa in coda.
Durante l'uscita, nel passo n. 5:
Determinare se sono presenti operazioni di download, caricamento, operazioni SCM o scritture di proprietà remote da eseguire.
I trasferimenti file possono iniziare solo se non viene superato il limite di trasferimento.
Durante l'operazione di creazione o scrittura nel file binario, al passo n. 8, l'accesso in scrittura al file viene bloccato. Se si tratta dell'ultimo blocco e viene fornito un checksum, allora viene convalidato.
Contrassegnare l'operazione come non riuscita o completata. Convalidare inoltre il checksum, se specificato.
Download di file avviato da ThingWorx Platform 
Come mostrato nell'illustrazione,
Durante la copia del file, nel passo n. 1, vengono eseguite le convalide di input seguenti:
Se l'operazione è controllata da edge, verificare che siano stati superati il numero massimo di trasferimenti simultanei e il numero di trasferimenti simultanei per oggetto.
Se non sono stati superati, l'operazione viene messa in coda per essere eseguita successivamente. In caso contrario, la copia non riesce e l'operazione non viene messa in coda.
Durante l'uscita, ovvero nel passo n. 4,
Determinare se sono presenti operazioni di download, caricamento, operazioni SCM o scritture di proprietà remote da eseguire.
I trasferimenti file possono iniziare solo se non vengono superati i limiti dei trasferimenti.
Durante l'operazione di creazione o scrittura nel file binario, ad esempio nel passo n. 7, l'accesso in lettura al file viene bloccato.
Platform contrassegna l'operazione come non riuscita o completata.
Parametri regolabili importanti 
Le impostazioni di configurazione nel sottosistema Trasferimento file devono essere regolate con attenzione per ottenere una buona simultaneità per i trasferimenti file. Alcune delle impostazioni sono elencate di seguito. Per ulteriori dettagli, vedere Sottosistema Trasferimento file
Totale Numero max di trasferimenti file controllati da edge consentiti → Trasferimenti max di file paralleli disponibili in Platform superato il quale un'operazione viene spostata dalla coda di attesa alla coda attiva. Se è necessario maggiore parallelismo, questo valore deve essere più alto.
Totale numero max di trasferimenti file controllati da edge consentiti per oggetto → Numero max di trasferimenti file paralleli per oggetto disponibile in Platform superato il quale un'operazione viene spostata dalla coda di attesa alla coda attiva. In presenza di un numero inferiore di oggetti con un elevato numero di file da trasferire per ciascun oggetto, potrebbe risultare utile aumentare questo valore.
* 
Un valore più elevato potrebbe tuttavia comportare una distribuzione non equa delle posizioni disponibili tra i dispositivi rispetto al numero massimo di trasferimenti file paralleli.
Numero max di trasferimenti file consentiti nella coda non in linea → Se la frequenza di caricamento del trasferimento file è molto elevata e l'elaborazione è più lenta, questo valore deve essere superiore. In questo modo, anziché essere rifiutate, le operazioni rimangono nella coda dei lavori non in linea.
Numero max di trasferimenti file consentiti per oggetto nella coda non in linea → Se la frequenza di caricamento del trasferimento file è molto elevata e l'elaborazione è più lenta, questo valore deve essere superiore. In questo modo, anziché essere rifiutate, le operazioni rimangono nella coda dei lavori non in linea.
I trasferimenti file controllati da edge vengono eseguiti utilizzando il pool di thread WSExecutionProcessor. Pertanto, per i trasferimenti file deve essere disponibile un numero sufficiente di thread. Utilizzare Impostazioni processore esecuzione in WSExecutionProcessingSubsystem per regolare questo pool di thread. Per ulteriori informazioni, vedere Sottosistema Elaborazione esecuzione WebSocket.
Le statistiche sui trasferimenti file possono essere monitorate osservando le diverse metriche esposte dall'endpoint /Metrics. Per ulteriori informazioni sulle metriche per il trasferimento dei file, vedere Monitoraggio dei sottosistemi ThingWorx.
Per ulteriori informazioni sull'ottimizzazione di eMessage Connector, vedere Ottimizzazione di eMessage Connector.
Best practice 
ThingWorx Platform supporta la lettura e la scrittura simultanee di file nei repository di file. Per evitare danneggiamenti ai dati e garantirne la coerenza, la piattaforma deve acquisire dei blocchi su file e directory durante le operazioni di lettura e scrittura. Impedendo che più utenti scrivano contemporaneamente sulla stessa directory o lo stesso file, si garantisce un livello di simultaneità più elevato e un aumento del throughput delle operazioni sui file.
Per gestire volumi elevati di trasferimenti file, l'input/output dei file deve supportare operazioni di lettura/scrittura simultanee e deve essere posizionato in un archivio diverso da /ThingworxPlatform.
Monitorare continuamente le prestazioni dei trasferimenti file. Fare riferimento alla documentazione relativa ai criteri di misurazione dei file.
Gli sviluppatori di applicazioni devono essere consapevoli della relazione tra le sottoscrizioni ThingWorx e le operazioni di trasferimento file, poiché l'esecuzione di servizi che richiedono operazioni intensive di input/output associate al completamento di eventi di trasferimento file utilizzerà i thread TWEventProcessor limitati destinati alle operazioni veloci. Adattare le impostazioni del pool di thread TWEventProcessor e garantire un livello di prestazioni dell'infrastruttura che consenta di evitare ripercussioni sulle prestazioni di esecuzione di altre sottoscrizioni.
È stato utile?