Konfigurieren von manifest.yml

Die Datei manifest.yml, die sich im Stammverzeichnis des Asset Compute-Projekts befindet, beschreibt alle Sekundäre in diesem Projekt, die eingesetzt werden sollen.

manifest.yml

Standardsekundärdefinition

Sekundäre werden als Adobe I/O Runtime-Aktionseinträge unter actions definiert und bestehen aus einer Reihe von Konfigurationen.

Sekundäre, die auf andere Adobe I/O-Integrationen zugreifen, müssen die annotations -> require-adobe-auth-Eigenschaft auf true setzen, da dies die Adobe I/O-Anmeldeinformationen des Sekundärs über das params.auth-Objekt offenlegt.  Dies ist in der Regel erforderlich, wenn der Sekundär Adobe I/O-APIs wie die Adobe Photoshop-, Lightroom- oder Sensei-APIs aufruft. Dies kann zudem für jeden Sekundär umgeschaltet werden.

  1. Öffnen und überprüfen Sie den automatisch generierten Sekundär manifest.yml. Projekte, die mehrere Asset Compute-Sekundäre enthalten, müssen für jeden Sekundär einen Eintrag unter dem Array actions definieren.
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.

Definieren von Limits

Jeder Sekundär kann die Limits für seinen Ausführungskontext in Adobe I/O Runtime konfigurieren.  Diese Werte sollten angepasst werden, um eine optimale Skalierung des Sekundärs zu ermöglichen, basierend auf der Menge, Rate und Art der zu berechnenden Assets sowie der Art der von ihm durchgeführten Arbeit.

Prüfen Sie die Adobe-Größenrichtlinien, bevor Sie Grenzen festlegen.  Asset Compute-Sekundäre können bei der Verarbeitung von Assets nicht genügend Arbeitsspeicher haben, was dazu führt, dass die Adobe I/O Runtime-Ausführung beendet wird. Stellen Sie daher sicher, dass die Größe des Sekundärs für die Verarbeitung aller Kandidaten-Assets angemessen ist.

  1. Fügen Sie einen inputs-Abschnitt zu dem neuen Aktionseintrag in wknd-asset-compute hinzu.  Dadurch können die Gesamtleistung und die Ressourcenzuweisung des Asset Compute-Sekundärs optimiert werden.
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

Die fertige manifest.yml

Die endgültige manifest.yml sieht wie folgt aus:

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

manifest.yml auf Github

Die endgültige .manifest.yml ist auf Github verfügbar unter:

Validieren der manifest.yml

Sobald die generierte manifest.yml für Asset Compute aktualisiert ist, führen Sie das lokale Entwicklungs-Tool aus und stellen Sie sicher, dass es erfolgreich mit den aktualisierten Einstellungen der manifest.yml startet.

So starten Sie das Asset Compute-Entwicklungs-Tool für das Asset Compute-Projekt:

  1. Öffnen Sie eine Befehlszeile im Asset Compute-Projektstammverzeichnis (in VS Code kann dies direkt in der IDE über „Terminal“ > „Neues Terminal“ geöffnet werden) und führen Sie den folgenden Befehl aus:

    code language-none
    $ aio app run
    
  2. Das lokale Asset Compute-Entwicklungs-Tool wird in Ihrem Standard-Webbrowser unter http://localhost:9000 geöffnet.

    aio app run

  3. Beobachten Sie die Befehlszeilenausgabe und den Webbrowser auf Fehlermeldungen während der Initialisierung des Entwicklungs-Tools.

  4. Um das Asset Compute-Entwicklungs-Tool zu beenden, wählen Sie Ctrl-C in dem Fenster aus, in dem aio app run ausgeführt wurde.

Fehlerbehebung

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69