[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Sep 2004
    Beiträge
    136

    Question Aktivierungsgruppen ?

    Hallo zusammen,

    wie ich ja nun aus meinem letzten Thema gelernt habe, werden Aktivierungsgruppen erst freigegeben, wenn der Job endet.

    Weil wir mit benannten oder *caller Aktivierungsgruppen arbeiten, kann im laufe eines Tages einiges an Aktivierungsgruppen erstellt werden. Einige Jobs laufen auch 1 Monat komplette ohne Neuanmeldung durch.
    In wie weit, belasten viele Aktivierungsgruppen die Leistung der I5?

    Xanas

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Wenn genug Speicher (auch Platte) vorhanden sind, überhaupt nicht.
    Durch Paging werden inaktive Seiten eh ausgelagert.

    Allerdings sollten nicht benötigte ACTGRP's per RCLACTGRP bei Langläufer-Job's rausgeschmissen werden.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Sep 2004
    Beiträge
    136
    habe ich denn einen Performance Vorteil, wenn ich eine benannte Aktivierungsgruppe verwende statt *caller?


    z.B ein Auftrufstapel
    pgmA = actgrp('A')
    pgmB = actgrp('B')
    pgmC = actgrp('C')
    pgmD = actgrp('D')

    oder
    pgmA = actgrp('A')
    pgmB = actgrp(*caller)
    pgmC = actgrp(*caller)
    pgmD = actgrp(*caller)

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Der Performance-Vorteil ist nur minimal, da ACTGRP's nur beim Init etwas dauern.
    Wichtig ist die Call-Reihenfolge bzw. Verwendung.
    Häufig verwendete Programme können in einer eigenen gemeinsamen ACTGRP laufen, seltenere Aufrufe in einer eigenen.
    Z.B.:
    PGMA actgrp(A)
    - call PGMC actgrp(X)
    - call PGMD actgrp(X)
    rclactgrp A

    PGMB actgrp(B)
    - call PGMC actgrp(X)
    - call PGMD actgrp(X)
    rclactgrp B

    ACTGRP(C) bleibt also aktiv.
    Es kommt auf das Design der Anwendung an, ggf. sind aber Service-Pgme performanter.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Sep 2004
    Beiträge
    136
    Wann sind Service Programme performanter, in einer eigenen oder *caller Actgrp?


    Warum macht man den rclactgrp überhaupt? Ich muss zu geben, wir verwenden den bisher überhaupt nicht.

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Den RCLACTGRP benötigt man nur, wenn man tatsächlich mal aufräumen muss.
    In Batchanwendungen macht er eher selten Sinn, da normale Batchjobs sich beenden.
    Bei Dauerläufern kann es dann Sinn machen, wenn sehr viele verschiedene Aktionen eher selten aufgerufen werden. Werden immer die selben Programme gestartet, spart man sich das Initialisieren.
    Hilfreicher ist da aber meistens, ob sich ein Programm mit oder ohne *INLR=*ON beendet.
    Wird ein solches Programm häufig aufgerufen, muss man wissen ob die *INZSR und der Init aller Felder tatsächlich benötigt wird.
    Bei *INLR=*OFF und RETURN entfällt der mühsame Open aller Dateien. Allerdings bleiben ggf. gesperrte Sätze gesperrt !

    In Service-Programme steckt man nur Funktionen, die sehr häufig von verschiedenen Programmen verwendet werden.
    Aber auch hier: das Anwendungsdesign entscheidet.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  7. #7
    Registriert seit
    Sep 2004
    Beiträge
    136
    Zitat Zitat von Fuerchau
    Den RCLACTGRP benötigt man nur, wenn man tatsächlich mal aufräumen muss.
    Ah alles klar, da wir ja anständig Programmieren, bzw. es versuchen, brauchen wir ihn dann auch weiterhin nicht.

    Und abermals vielen Dank.

  8. #8
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    Hallo,

    bei Dauerläufern erfordert dann allerdings die Installation von Änderungen ein beenden des Programmes, damit die Änderung auch funzt.

    Den ganzen Performance Kram kann man hier vergessen, Zeit wird meist ganz woanders in größeren Mengen vertrödelt!!!

    mfg

    Dieter Bender

    PS: Beim Einsatz von Commit gibt es noch ein paar Aspekte zu berücksichtigen mit Activation Groups!

    Zitat Zitat von Xanas
    Ah alles klar, da wir ja anständig Programmieren, bzw. es versuchen, brauchen wir ihn dann auch weiterhin nicht.

    Und abermals vielen Dank.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •