PDA

View Full Version : QBASE oder doch lieber QCTL?



Seiten : 1 [2] 3

BenderD
14-03-11, 08:03
... SBMJOB hat im Standard JOBQ(*JOBD) und JOBD(*USRPRF) und hier sitzen die korrekten Einstellschräubchen, sprich beim Usrprf und der jobd

BTW: was das starten der anderen Subsysteme angeht, die QCTL Konfiguration braucht zusätzliche Subsysteme, die logischerweise automatisch mitgestartet werden, sonst würde das ja nicht funzen!

D*B


Wie du siehst, die JOBQ QBATCH erlaubt genau nur 1 Job.
Wenn du nichts explizit angibst, landen alle SBMJOB's genau in dieser.

Ich habe auch hier auf einem Kundensystem viele JOBQ's (je Mandant 1) mit Anzahl Job's je Job-Prio eingerichtet, sowie jede Menge passende JOBD's.
Dadurch läßt sich sehr viel besser die Parallelverarbeitung unterschiedlicher Mandanten und Aufgaben steuer.

Der Standard liefert da halt nichts.

Oder gibst du gezielt z.B. die QTXTSRCH beim SBMJOB an ?
Ich denke nicht.

holgerscherer
14-03-11, 17:27
Ich habe auch hier auf einem Kundensystem viele JOBQ's (je Mandant 1) mit Anzahl Job's je Job-Prio eingerichtet, sowie jede Menge passende JOBD's.
Dadurch läßt sich sehr viel besser die Parallelverarbeitung unterschiedlicher Mandanten und Aufgaben steuer.


Alles eine Frage der Literzahl. Aber einer gewissen Menge ist i5/OS aber mehr mit sich selbst als mit den Jobs beschäftigt. Hier auf einer der öffentlichen Kisten hat jeder User seine eigene JobQ (also etwa 15.000) samt Einträge in die Subsysteme. Das Starten eines Jobs (sprich - suchen des Eintrags in den JOBQE) kann schon mal 500ms brauchen... bei 2000CPW

-h

Fuerchau
14-03-11, 18:06
Was sind schon 500ms wenn der Job selber schon wesentlich länger braucht?
Und wenn dann ggf. noch Jobs in der Queue hängen ...
Ich glaube, das kann man getrost vernachlässigen;).

holgerscherer
14-03-11, 18:16
Was sind schon 500ms wenn der Job selber schon wesentlich länger braucht?
Und wenn dann ggf. noch Jobs in der Queue hängen ...
Ich glaube, das kann man getrost vernachlässigen;).

Baldur, wenn in den Queues für das SBS mal eben 100 Jobs (kleinerer Bauart) rumtummeln, geht schon mal ne Minute für das Aufstarten drauf. Und vielleicht 20 Sekunden fürs Verarbeiten. Das ist schon relevant...

-h

BenderD
15-03-11, 08:38
... das ist zwar lange her, dass das meine Baustelle war, das dürfte aber eher an den MAXJOBS des Subsystems liegen...

D*B


Alles eine Frage der Literzahl. Aber einer gewissen Menge ist i5/OS aber mehr mit sich selbst als mit den Jobs beschäftigt. Hier auf einer der öffentlichen Kisten hat jeder User seine eigene JobQ (also etwa 15.000) samt Einträge in die Subsysteme. Das Starten eines Jobs (sprich - suchen des Eintrags in den JOBQE) kann schon mal 500ms brauchen... bei 2000CPW

-h

holgerscherer
15-03-11, 09:14
... das ist zwar lange her, dass das meine Baustelle war, das dürfte aber eher an den MAXJOBS des Subsystems liegen...
D*B

Nö, nicht die Bohne. Das liegt daran, dass die Suche in der JOBQE Liste schon seit Jahren lahm ist. So ab 3000 Einträgen merklich ;-)

-h

TGsoft
15-03-11, 13:27
Baldur, wenn in den Queues für das SBS mal eben 100 Jobs (kleinerer Bauart) rumtummeln, geht schon mal ne Minute für das Aufstarten drauf. Und vielleicht 20 Sekunden fürs Verarbeiten. Das ist schon relevant...

-h

Ich sehe eher das Problem in den Systemwerten:
QACTJOB *ALC Anfängliche Anzahl aktiver Jobs
QADLACTJ *ALC Zusätzliche Anzahl aktiver Jobs
QADLTOTJ *ALC Zusätzliche Anzahl aller Jobs
QTOTJOB *ALC Anfängliche Gesamtzahl Jobs
Damit läßt sich für das Starten und Verwalten von Jobs eine ganze Menge Performance erzeugen.
Wenn ich mich recht erinnere liegen die Vorgabewerte bei 20/10/10/30. Das bedeutet, bei 100 neuen Jobs im System, dass die JOBTBL etwa 3 mal um 30 Einträge (im ungünstigsten Fall 4 mal) erweitert werden muss. Dabei spielt die "Bauart" der Jobs keine Rolle, die vorgehensweise des OS ist immer gleich.
Bei 15000 Benutzern und nur 2000 CPWs würde ich mich spontan für mindestens 6 SBSDs entscheiden, damit jedes SBS nur etwa 2500 bis 3000 Jobs verwalten muss.
Für die Systemwerte würde ich 30/20/20/50 einstellen.
Wobei diese Einstellungen stark von der Größe des Hauptspeichers abhängen, da jeder aktive Job Minimum 110k belegt.

Gruß
Thomas

holgerscherer
15-03-11, 13:50
Ich sehe eher das Problem in den Systemwerten:


Leute, bei aller Liebe - bitte noch mal genau lesen. Hier gehts um den SBMJOB, ursprünglich aus der Frage, QBASE oder QCTL. Wir weichen davon ein wenig ab. Ich kann meine gesamte Job-Konfig sowie die zugehörigen Systemwerte automatisiert umbauen auf 2 SBS oder 20SBS (schon probiert). Das bringt nicht wirklich viel. Nur - wenn die Anzahl der JOBQE in einem Subsystem etwa 3000 übersteigt - geht das System merklich in die Knie. Wie viele Jobs da gleichzeitig laufen, und ob der Hausmeister die Spools in die Tonne kippt, ist nebensächlich.

-h

Fuerchau
15-03-11, 14:02
Das Hauptproblem des OS/400 ist, dass die Suchvorgänge für JOBQ's sequentiell laufen.
Zum besorgen eines freien Job-Eintrages muss auch die Jobverwaltungstabelle intern sequentiell durchsucht werden.
Sicherlich spielen obige Systemwerte noch eine kleine Rolle, aber wenn man mal mit WRKSYSSTS sieht, wieviele tote Jobs so im System sind, kann man die Zeiten wohl nachvollziehen.
Bei meinem Kunden gibts z.B. nur 1200 aktive Jobs bei 21.000 Jobs im System!
Die Differenz sind Jobs, die halt irgendwo noch Spools aufheben.

Zusätzlich wird auch das Erstellen von Spools dadurch verlangsamt, da auch hier nach freien Spoolblöcken sequentiell gesucht wird.

Eine effektivere Speicherverwaltung (wobei das OS/400 hier schon erheblich besser ist als z.B. Windows) beim Durchsuchen mittels Userindizees würde da schon einiges helfen.

Warum die IBM da nicht mal was macht, müsste man diese mal fragen.
Vielleicht rechnet die immer noch nicht damit, dass man eine AS/400 auch als Mainframe benutzen kann.

Aber wie schon mal gesagt, am eigentlichen Thema vorbei.

KingofKning
15-03-11, 18:30
@Baldur
Vielleicht am Thema vorbei, aber immer wieder interessant.

GG