Il manifest.yml
, che si trova nella directory principale del progetto Asset compute, descrive tutti i processi di lavoro del progetto da distribuire.
I lavoratori sono definiti come voci di azioni Adobe I/O Runtime in actions
, e comprende un set di configurazioni.
I lavoratori che accedono ad altre integrazioni Adobe I/O devono impostare annotations -> require-adobe-auth
proprietà a true
come questo espone le credenziali Adobe I/O del lavoratore tramite params.auth
oggetto. Questo è in genere necessario quando il lavoratore effettua una chiamata alle API di Adobe I/O, come le API di Adobe Photoshop, Lightroom o Sensei, e può essere attivato per lavoratore.
manifest.yml
. I progetti che contengono più lavoratori Asset compute devono definire una voce per ogni lavoratore sotto actions
array.packages:
__APP_PACKAGE__:
license: Apache-2.0
actions: # the array of workers, since we have a single worker there is only one entry beneath actions
worker: # the auto-generated worker definition
function: actions/worker/index.js # the entry point to the worker
web: 'yes' # as our worker is invoked over HTTP from AEM Author service
runtime: 'nodejs:12' # the target nodejs runtime (only 10 and 12 are supported)
limits:
concurrency: 10
annotations:
require-adobe-auth: true # set to true, to pass through Adobe I/O access token/client id via params.auth in the worker, typically required when the worker calls out to Adobe I/O APIs such as the Adobe Photoshop, Lightroom or Sensei APIs.
Ogni lavoratore può configurare limiti per il relativo contesto di esecuzione in Adobe I/O Runtime. Questi valori devono essere regolati in modo da fornire al lavoratore un dimensionamento ottimale, in base al volume, al tasso e al tipo di risorse che calcolerà, nonché al tipo di lavoro svolto.
Revisione Adobe di indicazioni sul dimensionamento prima di impostare i limiti. I lavoratori Asset compute possono esaurire la memoria durante l’elaborazione delle risorse, causando l’interruzione dell’esecuzione di Adobe I/O Runtime, in modo da garantire che il lavoratore venga ridimensionato in modo appropriato per gestire tutte le risorse candidate.
inputs
sezione al nuovo wknd-asset-compute
voce azioni. Ciò consente di ottimizzare le prestazioni complessive e l'allocazione delle risorse del lavoratore Asset compute.packages:
__APP_PACKAGE__:
license: Apache-2.0
actions:
worker:
function: actions/worker/index.js
web: 'yes'
runtime: 'nodejs:12'
limits: # Allows for the tuning of the worker's performance
timeout: 60000 # timeout in milliseconds (1 minute)
memorySize: 512 # memory allocated in MB; if the worker offloads heavy computational work to other Web services this number can be reduced
concurrency: 10 # adjust based on expected concurrent processing and timeout
annotations:
require-adobe-auth: true
La versione finale manifest.yml
ha un aspetto simile a:
packages:
__APP_PACKAGE__:
license: Apache-2.0
actions:
worker:
function: actions/worker/index.js
web: 'yes'
runtime: 'nodejs:12'
limits:
timeout: 60000 # in ms
memorySize: 512 # in MB
concurrency: 10
annotations:
require-adobe-auth: true
La versione finale .manifest.yml
è disponibile su Github all’indirizzo:
Una volta generato l’Asset compute manifest.yml
viene aggiornato, esegui lo strumento di sviluppo locale e assicurati che inizi correttamente con manifest.yml
impostazioni.
Per avviare lo strumento di sviluppo Asset compute per il progetto Asset compute:
Apri una riga di comando nella directory principale del progetto di Asset compute (in Codice VS può essere aperto direttamente nell’IDE tramite Terminal > New Terminal) ed esegui il comando:
$ aio app run
Lo strumento di sviluppo Asset compute locale verrà aperto nel browser predefinito all’indirizzo http://localhost:9000.
Esaminare l'output della riga di comando e il browser Web per i messaggi di errore durante l'inizializzazione dello strumento di sviluppo.
Per arrestare lo strumento di sviluppo Asset compute, tocca Ctrl-C
nella finestra che ha eseguito aio app run
per terminare il processo.