Configurazione degli endpoint della cartella controllati

Ultimo aggiornamento: 2023-05-04
  • Creato per:
  • User
ATTENZIONE

AEM 6.4 ha raggiunto la fine del supporto esteso e questa documentazione non viene più aggiornata. Per maggiori dettagli, consulta la nostra periodi di assistenza tecnica. Trova le versioni supportate qui.

Un amministratore può configurare una cartella di rete denominata cartella controllata, in modo che quando un utente inserisce un file (ad esempio un file PDF) nella cartella controllata, venga richiamata un’operazione di servizio configurata e manipoli il file. Dopo aver eseguito l'operazione specificata, il servizio salva il file modificato in una cartella di output specificata.

Configurazione del servizio Cartella controllata

Prima di configurare un endpoint per cartelle controllate, configura il servizio Cartella controllata. I parametri di configurazione del servizio Watched Folder hanno due finalità:

  • Per configurare gli attributi comuni per tutti gli endpoint di cartelle controllati
  • Per fornire valori predefiniti per tutti gli endpoint della cartella controllati

Dopo aver configurato il servizio Cartella controllata, aggiungi un endpoint Cartella controllata per il servizio di destinazione. Quando si aggiunge l'endpoint, è possibile impostare valori quali il nome del servizio e il nome dell'operazione da richiamare quando i file o le cartelle vengono inseriti nella cartella di input del servizio Watched Folder configurato. Per informazioni dettagliate sulla configurazione del servizio Cartella sottoposta a controllo, consulta Impostazioni del servizio Cartelle controllate.

Creazione di una cartella controllata

Puoi creare una cartella controllata nei due modi seguenti:

  • Durante la configurazione delle impostazioni per un endpoint di cartelle controllate, digitare il percorso completo della directory principale nella casella Percorso e aggiungere il nome della cartella controllata da creare, come illustrato in questo esempio:
      C:\MyPDFs\MyWatchedFolderPoiché la cartella MyWatchedFolder non esiste già, AEM Forms tenta di crearla in tale posizione.

  • Crea una cartella sul file system prima di configurare un endpoint per cartelle controllate, quindi digita il percorso completo nella casella Percorso.

In un ambiente cluster, la cartella che verrà utilizzata come cartella controllata deve essere accessibile, scrivibile e condivisa sul file system o sulla rete. In questo scenario, ogni istanza del server applicazioni del cluster deve avere accesso alla stessa cartella condivisa.

In Windows, se l'application server è in esecuzione come servizio, deve essere avviato con l'accesso appropriato alla cartella condivisa in uno dei seguenti modi:

  • Configura l'accesso al servizio server applicativo come parameter per iniziare come utente specifico con accesso appropriato alla cartella condivisa controllata.
  • Configurare l'opzione Start as Local System del servizio dell'applicazione server per consentire a Service di interagire con il desktop. Questa opzione richiede che la cartella condivisa controllata sia accessibile e scrivibile a tutti.

Concatenamento di cartelle controllate

Le cartelle controllate possono essere collegate tra loro in modo che il documento dei risultati di una cartella controllata sia il documento di input della cartella controllata successiva. Ogni cartella controllata può richiamare un servizio diverso. Configurando le cartelle controllate in questo modo, è possibile richiamare più servizi. Ad esempio, una cartella controllata può convertire i file PDF in Adobe PostScript® e una seconda cartella controllata può convertire i file PostScript in formato PDF/A. Per eseguire questa operazione, imposta semplicemente il risultato cartella della cartella controllata definita dal primo endpoint da indirizzare al input cartella della cartella controllata definita dal secondo endpoint.

L'output della prima conversione passerebbe a \path\result. L'input per la seconda conversione sarebbe \path\result e l'output della seconda conversione andrebbe a \path\result\result (o la directory definita nella casella Cartella risultati per la seconda conversione).

Interazione degli utenti con le cartelle controllate

Per un endpoint di cartelle controllate, gli utenti possono richiamare copiando o trascinando i file o le cartelle di input dal proprio desktop in una cartella controllata. I file verranno elaborati nell'ordine in cui arrivano.

Per gli endpoint di cartelle controllate, se il processo richiede un solo file di input, l'utente può copiare tale file nella directory principale della cartella controllata.

Se il processo contiene più di un file di input, l'utente deve creare una cartella al di fuori della gerarchia delle cartelle controllate che contiene tutti i file richiesti. Questa nuova cartella deve includere i file di input (ed eventualmente un file DDX, se richiesto dal processo). Dopo la creazione della cartella di lavoro, l’utente la copia nella cartella di input della cartella controllata.

NOTA

Assicurati che l'application server abbia eliminato l'accesso ai file nella cartella controllata. Se AEM moduli non possono eliminare i file dalla cartella di input dopo la scansione, il processo associato verrà richiamato a tempo indeterminato.

Output cartella controllata

Se l’input è una cartella e l’output è costituito da più file, AEM forms crea una cartella di output con lo stesso nome della cartella di input e copia i file di output in tale cartella. Quando l'output è costituito da una mappa del documento contenente una coppia chiave-valore, ad esempio l'output da un processo di Output, la chiave verrà utilizzata come nome del file di output.

I nomi dei file di output risultanti da un processo endpoint non possono contenere caratteri diversi da lettere, numeri e un punto (.) prima dell'estensione del file. I moduli AEM convertono altri caratteri nei loro valori esadecimali.

Le applicazioni client raccolgono i documenti dei risultati dalla cartella dei risultati della cartella controllata. Gli errori di processo vengono registrati nella cartella degli errori della cartella controllata.

Funzionamento della cartella di controllo

Il modulo Cartella controllata contiene i seguenti servizi:

  • Servizio cartelle controllate
  • provider.file_scan_service
  • provider.file_write_results_service

Oltre ai servizi elencati sopra, la cartella osservata dipende anche da altri servizi, tra cui il servizio di pianificazione per la pianificazione dei processi e il servizio Job Manager per supportare la chiamata asincrona dei servizi di destinazione.

Elaborazione di una richiesta di chiamata da parte di una cartella di controllo

Il servizio Cartella controllata gestisce la creazione, l'aggiornamento e l'eliminazione degli endpoint. Dopo che l’amministratore crea gli endpoint, è pianificato che questi vengano attivati dal servizio di pianificazione in base all’intervallo di ripetizione o all’espressione cron specificati.

Questo diagramma illustra il modo in cui la cartella controllata elabora una richiesta di chiamata.

en_watchedfolder

Il processo di richiamo di un servizio utilizzando le cartelle controllate è il seguente:

  1. Un'applicazione client inserisce file o cartelle nella cartella di input della cartella controllata.

  2. Quando si verifica l'intervallo di scansione del processo, il servizio di pianificazione richiama provider.file_scan_service per elaborare i file o le cartelle nella cartella di input.

  3. Il provider.file_scan_service esegue le seguenti attività:

    • Scansiona la cartella di input per i file o le cartelle che corrispondono al pattern di file di inclusione ed esclude i file o le cartelle per il pattern di file di esclusione specificato. I file o le cartelle meno recenti vengono prelevati per primi. Vengono inoltre raccolti i file e le cartelle più vecchi del tempo di attesa. In una sola scansione, il numero di file o cartelle elaborati si basa sulla dimensione del batch. Per informazioni sui pattern di file, vedere Informazioni sui pattern di file. Per informazioni sull'impostazione della dimensione del batch, vedere Impostazioni del servizio Cartelle controllate.
    • Consente di raccogliere i file o le cartelle da elaborare. Se i file o le cartelle non sono completamente scaricati, vengono prelevati nella scansione successiva. Per fare in modo che le cartelle siano completamente scaricate, gli amministratori devono creare una cartella con un nome utilizzando il pattern di file di esclusione. Dopo che la cartella ha tutti i file, deve essere rinominata nel pattern specificato nel pattern di file di inclusione. Questo passaggio assicura che la cartella contenga tutti i file necessari per richiamare il servizio. Per ulteriori informazioni su come garantire il download completo delle cartelle, vedi Suggerimenti per le cartelle controllate.
    • Sposta i file o le cartelle nella cartella dell’area di visualizzazione dopo averli selezionati per l’elaborazione.
    • Converte i file o le cartelle nella cartella stage nell’input appropriato in base alle mappature dei parametri di input dell’endpoint. Per esempi di mappature dei parametri di input, consulta Suggerimenti per le cartelle controllate.
  4. Il servizio di destinazione configurato per l’endpoint viene richiamato in modo sincrono o asincrono. Il servizio di destinazione viene richiamato utilizzando il nome utente e la password configurati per l’endpoint.

    • La chiamata sincrona chiama il servizio di destinazione direttamente e immediatamente gestisce la risposta.
    • Per la chiamata asincrona, il servizio di destinazione viene chiamato tramite il servizio Job Manager, che inserisce la richiesta in una coda. Il servizio Job Manager, a sua volta, chiama provider.file_write_results_service per gestire i risultati.
  5. Il provider.file_write_results_service gestisce la risposta o l'errore della chiamata del servizio di destinazione. In caso di esito positivo, l’output viene salvato nella cartella dei risultati in base alla configurazione dell’endpoint. Il provider.file_write_results_service conserva anche l'origine se l'endpoint è configurato in modo da conservare i risultati al termine dell'operazione.

    Quando la chiamata del servizio di destinazione si traduce in un errore, il provider.file_write_results_service registra il motivo dell'errore in un file failed.log e lo inserisce nella cartella degli errori. La cartella degli errori viene creata in base ai parametri di configurazione specificati per l’endpoint. Quando l'amministratore imposta l'opzione Mantieni su errore per la configurazione dell'endpoint, anche il provider.file_write_results_service copia i file di origine nella cartella degli errori. Per informazioni sul recupero dei file dalla cartella degli errori, vedere Punti di errore e ripristino.

Impostazioni dell’endpoint della cartella controllata

Utilizza le seguenti impostazioni per configurare un endpoint per cartelle controllate.

Nome: (Obbligatorio) Identifica l'endpoint. Non includere un carattere < perché troncherà il nome visualizzato in Workspace. Se immetti un URL come nome dell’endpoint, accertati che sia conforme alle regole di sintassi specificate nella RFC1738.

Descrizione: Descrizione dell'endpoint. Non includere un carattere < perché troncherà la descrizione visualizzata in Workspace.

Percorso: (Obbligatorio) Specifica il percorso della cartella controllata. In un ambiente cluster, questa impostazione deve puntare a una cartella di rete condivisa accessibile da ogni computer del cluster.

Asincrono: Identifica il tipo di chiamata come asincrono o sincrono. Il valore predefinito è asincrono. L’asincrono è consigliato per i processi a lunga durata, mentre quello sincrono è consigliato per i processi transitori o a breve durata.

Espressione Cron: Immetti un’espressione cron se la cartella controllata deve essere pianificata utilizzando un’espressione cron. Quando questa impostazione è configurata, l'intervallo di ripetizione viene ignorato.

Intervallo di ripetizione: L'intervallo in secondi per la scansione della cartella controllata per l'input. A meno che l'impostazione di limitazione non sia attivata, l'intervallo di ripetizione deve essere più lungo del tempo necessario per elaborare un processo medio; in caso contrario, il sistema potrebbe sovraccaricarsi. Il valore predefinito è 5. Per ulteriori informazioni, consulta la descrizione di Dimensione batch .

Conteggio ripetizioni: Numero di volte in cui la cartella controllata esegue la scansione della cartella o della directory. Il valore -1 indica una scansione indefinita. Il valore predefinito è -1.

Limitazione: Quando questa opzione è selezionata, limita il numero di processi di cartelle controllati che AEM i processi dei moduli in un dato momento. Il numero massimo di processi è determinato dal valore Dimensione batch. (Vedere Informazioni sulla limitazione.)

Nome utente: (Obbligatorio) Il nome utente utilizzato quando si richiama un servizio di destinazione dalla cartella controllata. Il valore predefinito è SuperAdmin.

Nome di dominio: (Obbligatorio) Il dominio dell’utente. Il valore predefinito è DefaultDom.

Dimensione batch: Numero di file o cartelle da raccogliere per scansione. Utilizzare per evitare un sovraccarico sul sistema; la scansione di troppi file alla volta può causare un arresto anomalo. Il valore predefinito è 2.

Le impostazioni Intervallo di ripetizione e Dimensione batch determinano il numero di file recuperati da Cartella osservata in ogni scansione. Cartella osservata utilizza un pool di thread Quartz per eseguire la scansione della cartella di input. Il pool di thread è condiviso con altri servizi. Se l’intervallo di scansione è piccolo, i thread analizzeranno spesso la cartella di input. Se i file vengono rilasciati frequentemente nella cartella controllata, è necessario mantenere l'intervallo di scansione ridotto. Se i file vengono eliminati raramente, utilizza un intervallo di scansione più ampio in modo che gli altri servizi possano utilizzare i thread.

Se c'è un grande volume di file da eliminare, rendere la dimensione del batch grande. Ad esempio, se il servizio richiamato dall'endpoint della cartella controllata può elaborare 700 file al minuto e gli utenti rilasciano i file nella cartella di input allo stesso ritmo, impostando Dimensione batch su 350 e Intervallo di ripetizione su 30 secondi sarà più facile controllare le prestazioni della cartella senza aumentare il costo di scansione della cartella controllata troppo spesso.

Quando i file vengono rilasciati nella cartella controllata, elenca i file nell’input, il che può ridurre le prestazioni se la scansione si verifica ogni secondo. L'aumento dell'intervallo di scansione può migliorare le prestazioni. Se il volume dei file da rilasciare è piccolo, regolare di conseguenza le dimensioni del batch e l'intervallo di ripetizione. Ad esempio, se vengono eliminati 10 file al secondo, provare a impostare l'intervallo di ripetizione su 1 secondo e la dimensione batch su 10.

Tempo di attesa: Tempo, in millisecondi, di attesa prima di eseguire la scansione di una cartella o di un file dopo la creazione. Ad esempio, se il tempo di attesa è di 3.600.000 millisecondi (un'ora) e il file è stato creato un minuto fa, questo file verrà acquisito dopo 59 o più minuti passati. Il valore predefinito è 0.

Questa impostazione è utile per garantire che un file o una cartella venga copiata completamente nella cartella di input. Ad esempio, se si dispone di un file di grandi dimensioni da elaborare e il file richiede dieci minuti per il download, impostare il tempo di attesa su 10*60 *1000 millisecondi. In questo modo si impedisce alla cartella controllata di eseguire la scansione del file se non ha dieci minuti.

Escludi pattern file: Un punto e virgola ; elenco delimitato di pattern utilizzati da una cartella controllata per determinare quali file e cartelle analizzare e raccogliere. Qualsiasi file o cartella con questo pattern non verrà analizzato per l’elaborazione.

Questa impostazione è utile quando l’input è una cartella con più file. Il contenuto della cartella può essere copiato in una cartella con un nome che verrà scelto dalla cartella controllata. Questo impedisce alla cartella controllata di raccogliere una cartella da elaborare prima che la cartella venga completamente copiata nella cartella di input.

È possibile utilizzare i pattern di file per escludere:

  • File con estensioni di file specifiche; ad esempio, *.dat, *.xml, *.pdf.

  • File con nomi specifici; ad esempio, data.* escluderebbero i file e le cartelle denominati data1, data2 e così via.

  • File con espressioni composite nel nome e nell'estensione, come in questi esempi:

    • Dati[0-9][0-9][0-9].[dD][aA][tT]
    • *.[dD][Aa][Tt]
    • *.[Xx][Mm][Ll]

Per ulteriori informazioni sui pattern di file, vedere Informazioni sui pattern di file.

Pattern file di inclusione: (Obbligatorio) Un punto e virgola ; elenco delimitato di pattern utilizzati dalla cartella controllata per determinare quali cartelle e file analizzare e raccogliere. Ad esempio, se il pattern di file di inclusione è input*, tutti i file e le cartelle corrispondenti a input* vengono prelevati. Ciò include i file e le cartelle denominati input1, input2 e così via.

Il valore predefinito è * e indica tutti i file e le cartelle.

È possibile utilizzare i pattern di file per includere:

  • File con estensioni di file specifiche; ad esempio, *.dat, *.xml, *.pdf.

  • File con nomi specifici; ad esempio, data.* includerebbero file e cartelle denominati data1, data2 e così via.

  • File con espressioni composite nel nome e nell'estensione, come in questi esempi:

    • Dati[0-9][0-9][0-9].[dD][aA][tT]
    • *.[dD][Aa][Tt]
    • *.[Xx][Mm][Ll]

Per ulteriori informazioni sui pattern di file, vedere Informazioni sui pattern di file.

Cartella risultati: Cartella in cui vengono archiviati i risultati salvati. Se i risultati non vengono visualizzati in questa cartella, controlla la cartella degli errori. I file di sola lettura non vengono elaborati e verranno salvati nella cartella degli errori. Questo valore può essere un percorso assoluto o relativo con i seguenti pattern di file:

  • %F = prefisso del nome del file
  • %E = estensione del nome file
  • %Y = anno (completo)
  • %y = anno (ultime due cifre)
  • %M = mese
  • %D = giorno del mese
  • %d = giorno dell'anno
  • %H = ora (24 ore)
  • %h = ora (12 ore)
  • %m = minuto
  • %s = secondo
  • %l = millisecondi
  • %R = numero casuale (tra 0 e 9)
  • %P = ID processo o processo

Ad esempio, se il 17 luglio è alle 20:09 e si specifica C:/Test/WF0/failure/%Y/%M/%D/%H/, la cartella dei risultati è C:/Test/WF0/failure/2009/07/17/20.

Se il percorso non è assoluto ma relativo, la cartella verrà creata all’interno della cartella controllata. Il valore predefinito è result/%Y/%M/%D/, ovvero la cartella Risultato all'interno della cartella controllata. Per ulteriori informazioni sui pattern di file, vedere Informazioni sui pattern di file.

NOTA

Minore è la dimensione delle cartelle dei risultati, migliore sarà la prestazione di Watched Folder. Ad esempio, se il carico stimato per la cartella controllata è di 1000 file ogni ora, prova un pattern come result/%Y%M%D%H in modo che venga creata una nuova sottocartella ogni ora. Se il carico è più piccolo (ad esempio, 1000 file al giorno), puoi utilizzare un pattern come result/%Y%M%D.

Mantieni cartella: Il percorso in cui vengono archiviati i file dopo la scansione e la registrazione riuscite. Il percorso può essere assoluto, relativo o nullo. È possibile utilizzare i pattern di file, come descritto per Cartella risultati. Il valore predefinito è preserve/%Y/%M/%D/.

Cartella degli errori: Cartella in cui vengono salvati i file di errore. Questa posizione è sempre relativa alla cartella controllata. È possibile utilizzare i pattern di file, come descritto per Cartella risultati.

I file di sola lettura non vengono elaborati e verranno salvati nella cartella degli errori.

Il valore predefinito è Errore/%Y/%M/%D/.

Mantieni in caso di errore: Mantieni i file di input in caso di errore durante l'esecuzione dell'operazione su un servizio. Il valore predefinito è vero.

Sovrascrivi nomi di file duplicati: Se impostato su True, i file nella cartella dei risultati e nella cartella di conservazione vengono sovrascritti. Se impostato su False, il nome verrà utilizzato per i file e le cartelle con un suffisso di indice numerico. Il valore predefinito è False.

Durata eliminazione: (Obbligatorio) I file e le cartelle nella cartella dei risultati vengono eliminati quando sono più vecchi di questo valore. Questo valore viene misurato in giorni. Questa impostazione è utile per evitare che la cartella dei risultati diventi piena.

Il valore -1 giorni indica di non eliminare mai la cartella dei risultati. Il valore predefinito è -1.

Nome operazione: (Obbligatorio) Elenco di operazioni che possono essere assegnate all'endpoint della cartella controllata.

Mappature dei parametri di input: Utilizzato per configurare l'input necessario per elaborare il servizio e il funzionamento. Le impostazioni disponibili dipendono dal servizio che utilizza l’endpoint cartelle controllate. Di seguito sono elencati i due tipi di ingressi:

Letterale: La cartella controllata utilizza il valore immesso nel campo così come viene visualizzato. Sono supportati tutti i tipi Java di base. Ad esempio, se un’API utilizza input quali String, long, int e Boolean, la stringa viene convertita nel tipo corretto e il servizio viene richiamato.

Variabile: Il valore immesso è un pattern di file utilizzato dalla cartella controllata per selezionare l’input. Ad esempio, nel caso del servizio encrypt password, dove il documento di input deve essere un file PDF, l’utente può utilizzare *.pdf come pattern di file. La cartella controllata raccoglierà tutti i file nella cartella controllata che corrispondono a questo pattern e richiamerà il servizio per ogni file. Quando si utilizza una variabile, tutti i file di input vengono convertiti in documenti. Sono supportate solo le API che utilizzano Document come tipo di input.

Mappature dei parametri di output: Utilizzato per configurare gli output del servizio e il funzionamento. Le impostazioni disponibili dipendono dal servizio che utilizza l’endpoint cartelle controllate.

L'output delle cartelle controllate può essere un singolo documento, un elenco di documenti o una mappa di documenti. Questi documenti di output vengono quindi salvati nella cartella dei risultati, utilizzando il pattern specificato in Mapping parametri di output.

NOTA

La specificazione di nomi che generano nomi di file di output univoci migliora le prestazioni. Ad esempio, considera il caso in cui il servizio restituisca un documento di output e la mappatura dei parametri di output lo associa a %F.%E (nome file ed estensione del file di input). In questo caso, se gli utenti rilasciano file con lo stesso nome ogni minuto e la cartella dei risultati è configurata in result/%Y/%M/%De l'impostazione Sovrascrivi nome file duplicato è disattivata, Cartella controllata tenterà di risolvere i nomi dei file duplicati. Il processo di risoluzione dei nomi di file duplicati può influire sulle prestazioni. In questa situazione, modifica della mappatura dei parametri di output in %F_%h_%m_%s_%l per aggiungere ore, minuti, secondi e millisecondi al nome, o per assicurarsi che i file eliminati abbiano nomi univoci possa migliorare le prestazioni.

Informazioni sui pattern di file

Gli amministratori possono specificare il tipo di file che può richiamare un servizio. È possibile stabilire più pattern di file per ciascuna cartella controllata. Un pattern di file può essere costituito da una delle seguenti proprietà:

  • File con estensioni di nomi di file specifiche; ad esempio, *.dat, *.xml, *.pdf,;

  • File con nomi specifici; ad esempio, data.*

  • File con espressioni composite nel nome e nell'estensione, come in questi esempi:

    • Dati[0-9][0-9][0-9].[dD][aA][tT]
    • *.[dD][Aa][Tt]
    • *.[Xx][Mm][Ll]

L’amministratore può definire il pattern di file della cartella di output in cui memorizzare i risultati. Per le cartelle di output (risultato, mantenimento e errore), l'amministratore può specificare uno dei seguenti pattern di file:

  • %Y = anno (completo)
  • %y = anno (ultime due cifre)
  • %M = mese,
  • %D = giorno del mese,
  • %d = giorno dell'anno,
  • %h = ora,
  • %m = minuto,
  • %s = secondo,
  • %R = numero casuale compreso tra 0-9
  • %J = Nome processo

Ad esempio, il percorso della cartella dei risultati potrebbe essere C:\Adobe\Adobe_Experience_Manager_forms\BarcodedForms\%y\%m\%d.

Le mappature dei parametri di output possono inoltre specificare pattern aggiuntivi, ad esempio:

  • %F = Nome file di origine
  • %E = Estensione nome file di origine

Se il pattern di mappatura del parametro di output termina con "File.separator" (che è il separatore di percorso), viene creata una cartella e il contenuto viene copiato in tale cartella. Se il pattern non termina con "File.separator", il contenuto (file di risultato o cartella) viene creato con quel nome. Per ulteriori informazioni sulle mappature dei parametri di output, vedi Suggerimenti per le cartelle controllate.

Informazioni sulla limitazione

Quando la limitazione è abilitata per un endpoint di una cartella di controllo, limita il numero di processi di cartelle controllati che possono essere elaborati in un dato momento. Il numero massimo di processi è determinato dal valore Dimensione batch, configurabile anche nell'endpoint Cartella controllata. I documenti in entrata nella directory di input della cartella controllata non vengono sottoposti a polling quando viene raggiunto il limite di limitazione. I documenti rimarranno inoltre nella directory di input fino al completamento di altri processi di cartelle controllati e al successivo tentativo di sondaggio. Nel caso dell’elaborazione sincrona, tutti i lavori elaborati in un singolo poll verranno conteggiati per il limite di limitazione, anche se i lavori vengono elaborati consecutivamente in un singolo thread.

NOTA

La limitazione non viene ridimensionata con un cluster. Quando la limitazione è abilitata, il cluster nel suo insieme non elaborerà più del numero di processi specificati in Dimensione batch in un dato momento. Questo limite è a livello di cluster e non è specifico per ogni nodo del cluster. Ad esempio, con una dimensione batch pari a 2, è possibile raggiungere il limite di limitazione con un singolo nodo che elabora due processi e nessun altro nodo esegue il polling della directory di input fino al completamento di uno dei processi.

Come funziona la limitazione

Cartella osservata esegue la scansione della cartella di input in ogni intervallo di ripetizione, rileva il numero di file specificati in Dimensione batch e richiama il servizio di destinazione per ciascuno di questi file. Ad esempio, se la dimensione del batch è quattro, ad ogni scansione, Cartella osservata raccoglierà quattro file, creerà quattro richieste di chiamata e richiamerà il servizio di destinazione. Prima del completamento di queste richieste, se viene richiamata la cartella sottoposta a controllo, verranno avviati di nuovo quattro processi, indipendentemente dal completamento dei quattro processi precedenti.

La limitazione impedisce alla cartella controllata di richiamare nuovi lavori quando i processi precedenti non sono stati completati. Cartella osservata rileverà i processi in corso ed elaborerà nuovi processi in base alla dimensione del batch meno i processi in corso. Ad esempio, nella seconda invocazione, se il numero di processi completati è solo tre e un processo è ancora in corso, la cartella osservata richiama solo altri tre lavori.

  • Cartella osservata si basa sul numero di file presenti nella cartella stage per scoprire quanti processi sono in corso. Se i file rimangono non elaborati nella cartella dell’area di visualizzazione, la cartella controllata non richiamerà altri lavori. Ad esempio, se le dimensioni del batch sono quattro e tre processi sono in stallo, Cartella osservata richiamerà un solo processo nelle chiamate successive. Ci sono diversi scenari che possono far sì che i file rimangano non elaborati nella cartella stage. Quando i processi vengono bloccati, l’amministratore può terminare il processo nella pagina di amministrazione del flusso di lavoro dei moduli in modo che Watched Folder sposta i file fuori dalla cartella dell’area di visualizzazione.
  • Se il server dei moduli si spegne prima che la cartella Watched possa richiamare i processi, l’amministratore può spostare i file fuori dalla cartella stage. Per informazioni, consulta Punti di errore e ripristino.
  • Se il server dei moduli è in esecuzione ma la cartella di controllo non è in esecuzione quando il servizio Job Manager effettua una chiamata di ritorno, che si verifica quando i servizi non si avviano nella sequenza ordinata, l’amministratore può spostare i file fuori dalla cartella dell’area di visualizzazione. Per informazioni, consulta Punti di errore e ripristino.

Prestazioni e scalabilità

Cartella osservata può servire 100 cartelle in totale su un singolo nodo. Le prestazioni di Watched Folder dipendono dalle prestazioni del server dei moduli. Per le chiamate asincrone, le prestazioni dipendono maggiormente dal caricamento del sistema e dai processi che si trovano nella coda di Job Manager.

Le prestazioni delle cartelle controllate possono essere migliorate aggiungendo nodi al cluster. I processi Cartella controllati sono distribuiti tra i nodi del cluster in virtù della pianificazione Quartz e, nel caso di richieste asincrone, dal servizio Job Manager. Tutti i processi vengono mantenuti nel database.

Cartella controllata dipende dal servizio di pianificazione per la pianificazione, la disprogrammazione e la riprogrammazione dei processi. Sono disponibili altri servizi, come il servizio Gestione eventi, il servizio User Manager e il servizio Email Provider, che condividono il pool di thread del servizio di pianificazione. Questo può influire sulle prestazioni delle cartelle esaminate. La messa a punto del pool di thread del servizio di pianificazione sarà necessaria quando tutti i servizi iniziano a utilizzarlo.

Cartelle controllate in un cluster

In un cluster, la cartella osservata dipende dal programmatore del quarzo e dal servizio Job Manager per il bilanciamento del carico e il failover. Per ulteriori informazioni sul comportamento del cluster al quarzo, vedi Documentazione al quarzo.

Cartella osservata esegue queste tre attività principali a ogni sondaggio:

  • Analizzare la cartella
  • Richiamare il servizio di destinazione
  • Gestire i risultati

Il comportamento di bilanciamento del carico e failover cambia a seconda che la cartella controllata sia configurata per la chiamata sincrona o asincrona.

Cartella di controllo sincrona in un cluster

Per le chiamate sincrone, il load balancer in quarzo decide quale nodo riceverà l’evento di polling. Il nodo che ottiene l'evento di polling eseguirà tutte le attività: esamina la cartella, richiama il servizio di destinazione e gestisce i risultati.

en_synchwatchedfoldercluster

Per le chiamate sincrone, quando un nodo non riesce, lo scheduler del quarzo invia nuovi eventi di polling ad altri nodi. Le invocazioni avviate sul nodo fallito andranno perse. Per ulteriori informazioni su come recuperare i file associati al processo non riuscito, vedi Punti di errore e ripristino.

Cartella di controllo asincrona in un cluster

Per le chiamate asincrone, il load balancer in quarzo decide quale nodo riceverà l’evento di polling. Il nodo che ottiene l’evento di polling esegue la scansione della cartella di input e richiama il servizio di destinazione inserendo la richiesta nella coda del servizio di Job Manager. Il load balancer del servizio Job Manager, a sua volta, è responsabile di decidere quale nodo elaborerà la richiesta di chiamata. È possibile che anche se il nodo A ha creato la richiesta di chiamata, il nodo B finisca per elaborare la richiesta. Oppure il nodo che ha avviato la richiesta di chiamata potrebbe anche finire per elaborare la richiesta.

en_asynchwatchedfoldercluster

Per le chiamate asincrone, quando un nodo non riesce, lo scheduler del quarzo invia nuovi eventi di polling ad altri nodi. Le richieste di richiamo create sul nodo non riuscito si troveranno nella coda del servizio di Gestione processi e verranno inviate ad altri nodi per l’elaborazione. I file per i quali non vengono create richieste di chiamata rimarranno nella cartella stage . Per ulteriori informazioni su come recuperare i file associati al processo non riuscito, vedi Punti di errore e ripristino.

Punti di errore e ripristino

A ogni evento di sondaggio, Cartella osservata blocca la cartella di input, sposta i file che corrispondono al pattern di file di inclusione nella cartella stage e quindi sblocca la cartella di input. Il blocco è necessario in modo che due thread non raccolgano lo stesso set di file ed elaborarli due volte. Le probabilità che questo accada aumentano con un piccolo intervallo di ripetizione e una grande dimensione batch. Una volta spostati i file nella cartella stage, la cartella di input viene sbloccata in modo che altri thread possano eseguire la scansione della cartella. Questo passaggio consente di fornire un throughput elevato perché altri thread possono eseguire la scansione mentre un thread elabora i file.

Una volta spostati i file nella cartella stage, vengono create richieste di chiamata per ogni file e viene richiamato il servizio di destinazione. Ci possono essere casi in cui la cartella Watched non può recuperare i file nella cartella stage:

  • Se il server si spegne prima che la cartella Watched possa creare la richiesta di chiamata, i file nella cartella stage rimangono nella cartella stage e non vengono recuperati.
  • Se la cartella Watched ha creato correttamente la richiesta di chiamata per ciascuno dei file nella cartella stage e il server si blocca, esistono due comportamenti in base al tipo di chiamata:

Sincrona: Se la cartella Watched è configurata per richiamare il servizio in modo sincrono, tutti i file nella cartella stage non vengono elaborati nella cartella stage.

Asincrono: In questo caso, Watched Folder si basa sul servizio Job Manager. Se il servizio Job Manager richiama la cartella Watched, i file nella cartella stage vengono spostati nella cartella preserve o failed in base ai risultati della chiamata. Se il servizio Job Manager non richiama la cartella osservata, i file rimarranno non elaborati nella cartella stage. Questa situazione si verifica quando la cartella osservata non è in esecuzione quando viene richiamato il Job Manager.

Ripristino dei file di origine non elaborati nella cartella stage

Se la cartella di controllo non è in grado di elaborare i file di origine nella cartella dell'area di visualizzazione, è possibile recuperare i file non elaborati.

  1. Riavvia il server applicazioni o il nodo.

  2. (Facoltativo) Interrompe l'elaborazione di nuovi file di input da parte della cartella di controllo. Se salti questo passaggio, sarà molto più difficile determinare quali file non vengono elaborati nella cartella stage. Per evitare che la cartella di controllo elabori nuovi file di input, eseguire una delle operazioni seguenti:

    • In Applicazioni e servizi, modificare il parametro Include File Pattern per l'endpoint della cartella controllata in modo che non corrisponda a nessuno dei nuovi file di input (ad esempio, immettere NOMATCH).
    • Sospendi il processo di creazione di nuovi file di input.

    Attendere che AEM moduli recuperi ed elabori tutti i file. La maggior parte dei file dovrebbe essere recuperata e tutti i nuovi file di input elaborati correttamente. Il tempo di attesa per il recupero e l'elaborazione dei file da parte della cartella Watched dipenderà dalla lunghezza dell'operazione da richiamare e dal numero di file da recuperare.

  3. Determinare quali file non possono essere elaborati. Se hai aspettato un periodo di tempo appropriato e hai completato il passaggio precedente e nella cartella Stage sono ancora presenti file non elaborati, passa al passaggio successivo.

    NOTA

    È possibile esaminare la data e l’ora dei file nella directory stage. A seconda del numero di file e del tempo di elaborazione normale, è possibile determinare quali file sono abbastanza grandi da essere considerati bloccati.

  4. Copia i file non elaborati dalla directory dell’area di visualizzazione nella directory di input.

  5. Se nel passaggio 2 non è stato possibile elaborare nuovi file di input in Watched Folder, modificare Include File Pattern sul valore precedente o riattivare il processo disattivato.

Considerazioni sulla sicurezza per le cartelle controllate

Ogni cartella controllata è configurata con un nome utente e una password. Queste credenziali vengono utilizzate quando si richiamano i servizi. Cartella controllata si basa sul fatto che la cartella condivisa è protetta con il file system di sicurezza sottostante in modo che solo il proprietario della cartella controllata possa accedere alla cartella condivisa.

Suggerimenti per le cartelle controllate

Di seguito sono riportati alcuni suggerimenti e trucchi per la configurazione dell’endpoint Cartella sottoposta a controllo:

  • Se si dispone di una cartella controllata in Windows che elabora i file immagine, specificare i valori per l'opzione Include File Pattern o Exclude File Pattern per evitare che il file Thumbs.db generato automaticamente da Windows venga sottoposto a polling dalla cartella controllata.

  • Se viene specificata un'espressione cron, l'intervallo di ripetizione viene ignorato. L'utilizzo dell'espressione cron si basa sul sistema di programmazione dei processi open source Quartz, versione 1.4.0.

  • La dimensione del batch è il numero di file o cartelle che verranno raccolti in ogni scansione della cartella controllata. Se la dimensione del batch è impostata su due e dieci file o cartelle vengono eliminati nella cartella di input della cartella controllata, solo due verranno prelevati in ogni scansione. Nella scansione successiva, che si verificherà dopo il tempo specificato nell'intervallo di ripetizione, i due file successivi verranno prelevati.

  • Per i pattern di file, gli amministratori possono specificare espressioni regolari con supporto aggiunto di pattern di caratteri jolly per specificare i pattern di file. Cartella osservata modifica l'espressione regolare per supportare i pattern dei caratteri jolly, ad esempio *.* o *.pdf. Questi pattern di caratteri jolly non sono supportati dalle espressioni regolari.

  • Cartella osservata esegue la scansione della cartella di input per l'input e non sa se il file o la cartella di origine viene copiata completamente nella cartella di input prima che inizi l'elaborazione del file o della cartella. Per fare in modo che il file o la cartella di origine venga copiata completamente nella cartella di input della cartella controllata prima che il file o la cartella venga raccolta, eseguire le operazioni seguenti:

    • Tempo di attesa, ovvero il tempo in millisecondi che la cartella osservata attende dall'ultima modifica. Utilizzare questa funzione se si dispone di file di grandi dimensioni da elaborare. Ad esempio, se il download di un file richiede 10 minuti, specifica il tempo di attesa come 10*60 *1000 millisecondi. In questo modo si impedisce che il file venga prelevato da una cartella di controllo se non ha la stessa età di 10 minuti.
    • Utilizzare il pattern di file di esclusione e il pattern di file di inclusione. Ad esempio, se il pattern di file di esclusione è ex* e il pattern del file di inclusione è in*, Visualizza cartella raccoglierà i file che iniziano con "in" e non raccoglierà i file che iniziano con "ex". Per copiare file o cartelle di grandi dimensioni, rinomina innanzitutto il file o la cartella in modo che il nome inizi con "ex". Dopo aver copiato completamente il file o la cartella denominata "ex" nella cartella controllata, rinominalo in "in*".
  • Utilizza la durata di eliminazione per mantenere pulita la cartella dei risultati. Cartella osservata pulisce tutti i file più vecchi della durata indicata nella durata di eliminazione. La durata è in giorni.

  • Quando si aggiunge un endpoint di una cartella sottoposta a controllo, dopo aver selezionato il nome dell’operazione viene compilata la mappatura dei parametri di input. Per ogni input dell'operazione, viene generato un campo di mappatura dei parametri di input. Di seguito sono riportati alcuni esempi di mappature dei parametri di input:

    • Per com.adobe.idp.Document input: Se l'operazione del servizio ha un input di tipo Document, l’amministratore può specificare il tipo di mappatura come Variable. La cartella sottoposta a controllo raccoglierà l’input dalla cartella di input della cartella controllata in base al pattern di file specificato per il parametro di input. Se l'amministratore specifica *.pdf come parametro, ogni file con estensione .pdf viene raccolto e convertito in com.adobe.idp.Documente il servizio richiamato.
    • Per java.util.Map input: Se l'operazione del servizio ha un input di tipo Map, l’amministratore può specificare il tipo di mappatura come Variable e inserire un valore di mappatura con un pattern come *.pdf. Ad esempio, per un servizio è necessaria una mappa di due com.adobe.idp.Document oggetti che rappresentano due file nella cartella di input, ad esempio 1.pdf e 2.pdf. La cartella osservata crea una mappa con la chiave come nome del file e il valore come com.adobe.idp.Document.
    • Per java.util.List input: Se l'operazione del servizio ha un input di tipo List, l'amministratore può specificare il tipo di mappatura come Variable e inserire un valore di mappatura con un pattern come *.pdf. Quando i file di PDF vengono eliminati nella cartella di input, la cartella controllata crea un elenco dei com.adobe.idp.Document oggetti che rappresentano questi file e richiamano il servizio di destinazione.
    • Per java.lang.String: L’amministratore dispone di due opzioni. Innanzitutto, l’amministratore può specificare il tipo di mappatura come Literal e immetti un valore di mappatura come stringa, ad esempio hello. La cartella osservata richiamerà il servizio con la stringa hello. In secondo luogo, l’amministratore può specificare il tipo di mappatura come Variable e inserire un valore di mappatura con un pattern come *.txt. In quest'ultimo caso, i file con estensione .txt verranno letti come documento obbligato come stringa per richiamare il servizio.
    • Tipo primitivo Java: L’amministratore può specificare il tipo di mappatura come Literal e fornire il valore. La cartella osservata richiama il servizio con il valore specificato.
  • Cartella osservata è destinata a funzionare con i documenti. Le uscite supportate sono com.adobe.idp.Document, org.w3c.Document, org.w3c.Node, nonché un elenco e una mappa di questi tipi. Qualsiasi altro tipo provocherà un errore di output nella cartella degli errori.

  • Se i risultati non si trovano nella cartella dei risultati, verificare che la cartella dei risultati non sia riuscita per verificare se si è verificato un errore.

  • Cartella osservata funziona meglio se utilizzata in modalità asincrona. In questa modalità, la Cartella osservata inserisce la richiesta di chiamata nella coda e richiama nuovamente. La coda viene quindi elaborata in modo asincrono. Quando l’opzione Asincrono non è impostata, la cartella controllata richiama il servizio di destinazione in modo sincrono e il motore di processo attende che il servizio venga eseguito con la richiesta e vengono prodotti i risultati. Se il servizio di destinazione richiede molto tempo per elaborare la richiesta, la cartella sottoposta a controllo potrebbe causare errori di timeout.

  • La creazione di cartelle controllate per le operazioni di importazione ed esportazione non consente l’astrazione dell’estensione del nome file. Quando si richiama il servizio di integrazione dati modulo utilizzando cartelle controllate, il tipo di estensione del nome file per il file di output potrebbe non corrispondere al formato di output previsto per il tipo di oggetto documento. Ad esempio, se il file di input in una cartella controllata che richiama l’operazione di esportazione è un modulo XFA che contiene dati, l’output deve essere un file di dati XDP. Per ottenere un file di output con l’estensione corretta del nome del file, puoi specificarlo nella mappatura dei parametri di output. In questo esempio, è possibile utilizzare %F.xdp per la mappatura dei parametri di output.

  • Cartella sottoposta a controllo può elaborare i file di input prima che vengano copiati completamente nella cartella. Il blocco dei file non è obbligatorio in UNIX così come in Windows. Per questo motivo, quando un file viene copiato in una cartella controllata, Watched Folder può spostare il file nell'area di visualizzazione senza attendere il completamento della copia del file. Questo comportamento determina l’elaborazione di solo una parte del file di input. Attualmente esistono due soluzioni alternative:

    • Soluzione alternativa 1

      1. Specificare un pattern per Escludi pattern file, ad esempio temp*.ps.
      2. Copia i file che iniziano con temp (ad esempio, temp1.ps) nella cartella controllata.
      3. Dopo aver copiato completamente il file nella cartella controllata, rinominare il file in modo che corrisponda al pattern specificato per Include File Pattern. Visualizza cartella, quindi sposta il file completato nell’area di visualizzazione.
    • Soluzione alternativa 2

      Se si conosce il tempo massimo necessario per copiare i file in una cartella controllata, specificare il tempo in secondi per Tempo di attesa. Visualizza cartella attende quindi il periodo di tempo specificato prima di spostare il file nell’area di visualizzazione.

      Questo non è un problema per i file in Windows perché Windows blocca un file quando un thread sta scrivendo. Tuttavia, questo è un problema per le cartelle su Windows. Per le cartelle, è necessario seguire i passaggi descritti in Soluzione alternativa 1.

  • Se l'attributo dell'endpoint Mantieni nome cartella per Cartella controllata è impostato su un percorso di directory null, la directory di gestione temporanea non viene pulita come dovrebbe essere. La directory contiene ancora il file elaborato e la cartella temporanea.

Raccomandazioni specifiche per il servizio per le cartelle controllate

Per tutti i servizi, è necessario regolare la dimensione batch e l'intervallo di ripetizione della cartella controllata in modo che la frequenza con cui Watched Folder recupera i nuovi file e cartelle da elaborare non superi la frequenza dei processi che possono essere elaborati dal server dei moduli AEM. I parametri effettivi da utilizzare possono variare a seconda del numero di cartelle controllate configurate, dei servizi che utilizzano cartelle controllate e dell'intensità dei processi nel processore.

Generare consigli sul servizio PDF

  • Il servizio Generate PDF può convertire un solo file alla volta per i seguenti tipi di file: Microsoft Word, Microsoft Excel, Microsoft PowerPoint, Microsoft Project, AutoCAD, Adobe Photoshop®, Adobe FrameMaker® e Adobe PageMaker®. Si tratta di lavori a lungo termine; pertanto, assicurati di mantenere le dimensioni del batch su un’impostazione bassa. Aumenta anche l'intervallo di ripetizione se nel cluster sono presenti più nodi.
  • Per i tipi di file PostScript (PS), Encapsulated PostScript (EPS) e di immagine, il servizio Generate PDF può elaborare diversi file in parallelo. È necessario regolare con attenzione la dimensione del pool di fagioli di sessione (che regola il numero di conversioni che verranno effettuate in parallelo) in base alla capacità del server e al numero di nodi nel cluster. Quindi aumentare la dimensione del batch a un numero che è uguale alla dimensione del pool di fagioli di sessione per i tipi di file che si sta cercando di convertire. La frequenza di polling deve essere determinata dal numero di nodi nel cluster; tuttavia, poiché il servizio Generate PDF elabora questi tipi di processi abbastanza velocemente, è possibile configurare l'intervallo di ripetizione su un valore basso come 5 o 10.
  • Anche se il servizio Generate PDF può convertire un solo file OpenOffice alla volta, la conversione è abbastanza veloce. La logica di cui sopra per le conversioni di PS, EPS e immagini si applica anche alle conversioni di OpenOffice.
  • Per abilitare una distribuzione uniforme del carico nel cluster, mantenere bassa la dimensione del batch e aumentare l'intervallo di ripetizione.

consigli per i servizi moduli con codice a barre

  • Per ottenere le migliori prestazioni durante l’elaborazione dei moduli con codice a barre (file di piccole dimensioni), immettere 10 per le dimensioni batch e 2 per Intervallo ripetuto.

  • Quando molti file vengono inseriti nella cartella di input, gli errori con i file nascosti denominati thumbs.db può verificarsi. Si consiglia quindi di impostare il pattern di file di inclusione per i file di inclusione sullo stesso valore specificato per la variabile di input (ad esempio, *.tiff). Questo impedisce l’elaborazione dei file DB da parte di Watched Folder.

  • Un valore Dimensione batch di 5 e Intervallo di ripetizione di 2 normalmente è sufficiente perché il servizio Forms con codice a barre in genere richiede circa 0,5 secondi per elaborare un codice a barre.

  • La cartella osservata non attende che il motore di processo finisca il processo prima che venga rilevato nuovi file o cartelle. Continua a eseguire la scansione della cartella controllata e a richiamare il servizio di destinazione. Questo comportamento può sovraccaricare il motore, causando problemi di risorse e timeout. Assicurati di utilizzare l'intervallo di ripetizione e le dimensioni del batch per limitare l'input della cartella osservata. È possibile aumentare l'intervallo di ripetizione e ridurre la dimensione del batch se esistono più cartelle controllate o abilitare la limitazione sull'endpoint. Per informazioni sulla limitazione, consulta Informazioni sulla limitazione.

  • Visualizza cartella rappresenta l’utente specificato nel nome utente e nel nome di dominio. Watched Folder richiama il servizio come utente se richiamato direttamente o se il processo è di breve durata. Per un processo di lunga durata, il processo viene richiamato con il contesto di sistema. Gli amministratori possono impostare i criteri del sistema operativo per Cartella controllata per determinare a quale utente consentire o negare l'accesso.

  • Utilizzare i pattern di file per organizzare risultati, errori e conservare le cartelle. (Vedi Informazioni sui pattern di file.)

  • Cartella osservata si basa sul programma Quartz per la scansione delle cartelle controllate. Lo scheduler del quarzo ha un pool di thread per analizzarli. Se l'intervallo di ripetizione per la cartella controllata è molto basso (< 5 secondi) e la dimensione del batch è elevata (> 2), può verificarsi una race condition. Quando si verifica questa condizione, un file viene raccolto da due thread di quarzo:

    • Uno dei thread trova il file e richiama il servizio di destinazione con il file.
    • Il secondo thread vede il file ma non riesce quando cerca di scoprire se il file è valido (file di lettura o scrittura), il che causa errori falsi che indicano che il file non può essere elaborato perché è di sola lettura. Questo accade solo con un intervallo di ripetizione basso e una dimensione batch elevata.

In questa pagina