Le manifest.yml
, situé à la racine du projet d'Asset compute, décrit tous les travailleurs de ce projet à déployer.
Les travailleurs sont définis comme des entrées d'action Adobe I/O Runtime sous actions
et sont constitués d'un ensemble de configurations.
Les utilisateurs qui accèdent à d'autres intégrations Adobe I/O doivent définir la propriété annotations -> require-adobe-auth
sur true
, dans la mesure où expose les informations d'identification Adobe I/O du travailleur par le biais de l'objet params.auth
. Cela est généralement requis lorsque le travailleur appelle des API Adobe I/O, telles que les API Adobe Photoshop, Lightroom ou Sensei, et peut être basculé par travailleur.
manifest.yml
. Les projets qui contiennent plusieurs travailleurs d'Asset compute doivent définir une entrée pour chaque travailleur sous la baie actions
.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.
Chaque collaborateur peut configurer les limites pour son contexte d’exécution dans Adobe I/O Runtime. Ces valeurs doivent être affinées pour fournir un dimensionnement optimal au travailleur, en fonction du volume, du taux et du type de ressources qu'il calculera, ainsi que du type de travail qu'il effectue.
Examinez les conseils relatifs au dimensionnement des Adobes avant de définir des limites. Les employés d’Asset compute peuvent manquer de mémoire lors du traitement des actifs, ce qui entraîne la mort de l’exécution de Adobe I/O Runtime. Assurez-vous donc que le collaborateur est dimensionné de manière appropriée pour gérer tous les actifs candidats.
inputs
à la nouvelle entrée d'actions wknd-asset-compute
. Cela permet d'ajuster la performance globale du travailleur d'Asset compute et l'allocation des ressources.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
Le manifest.yml
final ressemble à ceci :
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
Le .manifest.yml
final est disponible sur Github à l'adresse suivante :
Une fois que l'Asset compute manifest.yml
généré est mis à jour, exécutez l'outil de développement local et assurez-vous que les débuts correspondent aux paramètres manifest.yml
mis à jour.
Outil de développement de l'Asset compute début pour le projet d'Asset compute :
Ouvrez une ligne de commande dans la racine du projet d'Asset compute (dans le code VS, vous pouvez l'ouvrir directement dans l'IDE via Terminal > New Terminal) et exécutez la commande :
$ aio app run
L'outil de développement d'Asset compute local s'ouvre dans votre navigateur Web par défaut à l'adresse http://localhost:9000.
Recherchez les messages d’erreur dans la sortie de ligne de commande et dans le navigateur Web au fur et à mesure que l’outil de développement s’initialise.
Pour arrêter l'outil de développement d'Asset compute, appuyez sur Ctrl-C
dans la fenêtre qui a exécuté aio app run
pour arrêter le processus.