Arbetshanteraren och begränsning work-manager-and-throttling

AEM (och tidigare versioner) använde JMS-köer för att köra åtgärder asynkront. I AEM har JMS-köer ersatts av Work Manager. Det här dokumentet innehåller bakgrundsinformation om Work Manager och anvisningar om hur du konfigurerar begränsningsalternativ för Work Manager.

Om långvariga (asynkrona) åtgärder about-long-lived-asynchronous-operations

I AEM kan åtgärder som utförs av tjänster vara antingen kortlivade (synkrona) eller långlivade (asynkrona). Kortlivade åtgärder slutförs synkront på samma tråd som de anropades från. Dessa åtgärder väntar på ett svar innan de fortsätter.

Långvariga operationer kan spänna över flera system eller till och med sträcka sig utanför organisationen, t.ex. när en kund måste fylla i och skicka in en låneblankett som en del av en större lösning som integrerar flera automatiserade och mänskliga uppgifter. Sådana åtgärder måste fortsätta i väntan på svar. Långvariga åtgärder utför sitt underliggande arbete asynkront, vilket gör att resurser kan användas på annat sätt i väntan på slutförande. Till skillnad från en kortvarig åtgärd hanterar Work Manager inte en långvarig åtgärd som slutförs när den anropas. En extern utlösare, till exempel ett system som begär en annan åtgärd på samma tjänst eller en användare som skickar ett formulär, måste inträffa för att åtgärden ska kunna slutföras.

Om Work Manager about-work-manager

AEM (och tidigare versioner) använde JMS-köer för att köra åtgärder asynkront. AEM använder Work Manager för att schemalägga och köra asynkrona åtgärder via hanterade trådar.

Asynkrona åtgärder hanteras på följande sätt:

  1. Work Manager tar emot en arbetsuppgift för körning.
  2. Arbetshanteraren lagrar arbetsuppgiften i en databastabell och tilldelar en unik identifierare till arbetsuppgiften. Databasposten innehåller all information som krävs för att köra arbetsposten.
  3. Arbetshanterartrådar hämtar in arbetsobjekt när trådarna blir kostnadsfria. Innan du drar in arbetsobjekten kan trådarna kontrollera om de nödvändiga tjänsterna har startats, om det finns tillräckligt med stackstorlek för att dra in nästa arbetsuppgift och om det finns tillräckligt med processorcykler för att bearbeta arbetsobjektet. Arbetshanteraren utvärderar också attribut för arbetsuppgiften (till exempel prioritet) när körningen schemaläggs.

AEM formuläradministratörer kan använda Health Monitor för att kontrollera Work Manager-statistik, t.ex. antalet arbetsobjekt i kön och deras status. Du kan också använda Hälsoövervakning för att pausa, återuppta, försöka igen eller ta bort arbetsobjekt. (Se Visa statistik för Work Manager.)

Konfigurera begränsningsalternativ för Work Manager configuring-work-manager-throttling-options

Du kan konfigurera begränsning för Work Manager så att arbetsobjekt schemaläggs endast när det finns tillräckligt med minnesresurser. Du konfigurerar begränsning genom att ange följande JVM-alternativ på programservern.

Egenskap
Beskrivning
 adobe.work-manager.queue-refill-interval

Anger det tidsintervall i millisekunder som används i Arbetshanteraren vid sökning efter nya objekt i kön.

Värdet för det här alternativet är ett heltal. Standardvärdet är 1000 millisekunder (1 sekund).

Om volymen för asynkrona anrop är låg kan du öka värdet. Du kan till exempel öka den till något mellan 2 000 och 5 000 (2-5 sekunder).

Om volymen för asynkrona anrop är hög bör standardvärdet vara tillräckligt, men du kan använda ett lägre värde om det behövs. Om du minskar det här värdet för mycket (till exempel under 50, vilket ger en avfrågningsfrekvens på 20 gånger per sekund) genereras en avsevärd belastning på systemet.

 adobe.workmanager.debug-mode-enabled

Ställ in det här alternativet på true om du vill aktivera felsökningsläget eller till false om du vill inaktivera det.

I felsökningsläget loggas meddelanden om brott mot policyn i Work Manager och om att pausa/återuppta åtgärder i Work Manager. Ange att det här alternativet endast ska vara true vid felsökning.

 adobe.workmanager.memory-control.enabled
Ställ in det här alternativet på true för att aktivera begränsning baserat på de inställningar för minneskontroll som beskrivs nedan, eller till false för att inaktivera strypning.
 adobe.workmanager.memory-control.high-limit

Anger den maximala procentandel av minnet som kan användas innan Work Manager stryper inkommande jobb.

Standardvärdet för alternativet är 95. Det här värdet bör vara bra för de flesta system. Öka den bara om ditt system behöver utnyttja sin maximala kapacitet. Men tänk på att när du ökar det här värdet ökar även risken för minnesbrist.

Om du kör AEM formulär i en klustermiljö kanske du vill ange inställningar för minneskontrollgräns på olika noder i klustret. Du kan till exempel ha en lägre hög gräns för noderna A och B, som är programmerade i belastningsutjämnaren för interaktivt arbete. Och du kan ha högre höga gränser för noderna C och D, som inte används av belastningsutjämnaren, utan reserveras för asynkront arbete.

 adobe.workmanager.memory-control.low-limit

Anger den maximala procentandel av minnet som kan användas innan Work Manager slutar begränsa inkommande jobb.

Standardvärdet för alternativet är 20. Det här värdet bör vara bra för de flesta system.

Dadobe.workmanager.allocate.max-batch-size

Anger den maximala batchstorleken för arbetshanteraren. Standardbatchstorleken är 10.

Om statusen för en process i arbetshanteraren inte uppdateras även efter att uppgiften är slutförd, ställer du in batchstorleken på 1.

Lägg till Java-alternativ i JBoss

  1. Stoppa JBoss-programservern.
  2. Öppna [appserver root]/bin/run.bat (Windows) eller run.sh (Linux eller UNIX) i en redigerare och lägg till eventuella Java-alternativ i formatet -Dproperty=value.
  3. Starta om servern.

Lägg till Java-alternativ i WebLogic

  1. Starta WebLogic Administration Console genom att skriva https://[host name]:[port]/console i en webbläsare.

  2. Skriv användarnamnet och lösenordet som du skapade för WebLogic Server-domänen och klicka på Logga under Change Center och klicka på Lock & Edit.

  3. Klicka på Miljö > Servrar under Domänstruktur och klicka på namnet på den hanterade servern i den högra panelen.

  4. På nästa skärm klickar du på fliken Konfiguration > fliken Serverstart.

  5. I rutan Argument lägger du till de argument du vill ha i slutet av det aktuella innehållet. Om du till exempel vill inaktivera hälsoövervakaren lägger du till:

    -Dadobe.healthmonitor.enabled=false inaktiverar hälsoövervakning.

  6. Klicka på Spara och sedan på Aktivera ändringar.

  7. Starta om WebLogic-hanterad server.

Lägg till Java-alternativ i WebSphere

  1. Klicka på Servrar > Servertyper > WebSphere-programservrar i navigeringsträdet för administrationskonsolen.
  2. Klicka på servernamnet i den högra rutan.
  3. Under Serverinfrastruktur klickar du på arbetsflödet Java och formulär > Processdefinition.
  4. Klicka på Java Virtual Machine under Additional Properties (Ytterligare egenskaper).
  5. Skriv de argument du vill ha i rutan Allmänt om JVM-argument.
  6. Klicka på OK eller Använd och sedan på Spara direkt i huvudkonfigurationen.
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2