Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Oracle Concurrent Manager

Oracle Concurrent Manager ist ein wichtiger Bestandteil des Oracle E-Business Suite-Produkts. es hilft bei der Stapelverarbeitung vieler Dinge.

Ich präsentiere hier einige Details dazu

Es besteht aus mehreren Teilen. Erklären Sie jedes dieser Elemente im Detail. Es gibt Ihnen einen Einblick in wie ein E-Business Suite Concurrent Manager-Prozess funktioniert

Inhaltsverzeichnis

Arten von Oracle Concurrent Manager

Interner Concurrent Manager (ICM)

Der Internal Concurrent Manager (ICM) kann als das „Gehirn“ der gleichzeitigen Verarbeitung betrachtet werden. Es ist für die folgende Funktionalität verantwortlich:

-Startet alle anderen Prozesse wie Conflict Resolution Manager, Standard Manager
-Führt vom Administrator übermittelte „Control Requests“ aus.
-Aktivieren/Deaktivieren/Abbrechen Concurrent Manager
-Beenden Concurrent Request
-Überwacht Prozesse und startet fehlgeschlagene neu.
-Legt die Zielanzahl von Prozessen für jeden Dienst basierend auf der aktuellen Arbeitsschicht fest.

Starten des ICM

-adcmctl.sh script
-TNS Apps Listener muss gestartet werden, bevor ICM gestartet wird

Herunterfahren des ICM

-Das Herunterfahren des ICM stoppt alle anderen Dienste wie den Konfliktlösungsmanager, den Standardmanager
– Das normale Herunterfahren signalisiert Prozessen, dass sie beendet werden, nachdem sie ihre aktuellen Aufgaben abgeschlossen haben.
– Abbrechen beendet die Dienstprozesse.
– ICM wird erst beendet, wenn alle anderen Prozesse beendet wurden.
-Verwenden Sie adcmctl.sh, um ICM herunterzufahren.

Service Manager (FNDSM)

Dienstmanager werden auf den Knoten der mittleren Ebene eines GSM-fähigen Systems erzeugt, um als Agent des ICM zu fungieren. Wenn der ICM erkennt, dass er einen Dienstmanager benötigt, um eine Funktion auszuführen, wie z. B. das Starten eines gleichzeitigen Managerprozesses, auf einem Knoten der mittleren Ebene, führt er Remoteprozedursteuerungsaufrufe an den Apps-Listener auf diesem Knoten aus, um den Dienstmanager zu starten. Sobald der Service Manager gestartet und initialisiert wurde, kommuniziert der ICM direkt mit dem Service Manager über Remote Procedural Call (RPC) und gibt ihm Informationen zur Verwaltung der Dienste auf diesem Knoten.

-Der Service-Manager wird vom APPS TNS Listener erzeugt
– Der APPS TNS Listener muss auf jedem Middle-Tier-Knoten im System gestartet werden und von dem Benutzer gestartet werden, der ICM startet (z. B. applmgr)
- Der TNS-Listener erzeugt den Service Manager, der als ICM-Agent für den lokalen Knoten ausgeführt wird
– Der Service Manager wird bei Bedarf von ICM gestartet. Wenn auf einem Knoten keine Verwaltungsaktionen erforderlich sind, wird ein Service Manager erst dann von ICM gestartet, wenn dies erforderlich ist. Wenn ICM auch den Service Managers-Exit beendet.
-Die Service Manager-Umgebung wird von APPSORA.env wie in listener.ora definiert eingestellt
-Die Dateien listener.ora und tnsnames.ora müssen richtig konfiguriert werden der Listener, um den Service Manager zu spawnen und der ICM, um den Status des Service Managers überprüfen zu können.

Interne Monitore (FNDIMON)

Interne Monitore werden speziell in der parallelen gleichzeitigen Verarbeitung verwendet, um ein Failover des internen gleichzeitigen Managers auf andere verfügbare Knoten der mittleren Ebene zu ermöglichen.

-Platzieren Sie einen internen Monitor auf jedem Knoten, auf dem der ICM im Falle eines Fehlers starten kann.
-Interne Monitore werden standardmäßig auf jeden registrierten Knoten gesetzt.
-Wenn der ICM ausfällt, wird der interne Monitor ausfallen versuchen, einen neuen ICM auf dem lokalen Knoten zu starten.
-Wenn mehrere ICMs gestartet werden, bleibt nur der erste aktiv. Die anderen werden elegant aussteigen.

Oracle Concurrent Managers (FNDLIBR, INVLIBR)

Concurrent Manager stellen eine asynchrone Auftragsverarbeitung bereit, indem sie die Tabelle FND_CONCURRENT_REQUESTS in einem kontinuierlichen Zyklus überwachen. Die Aufgabe eines gleichzeitigen Managers besteht darin, gleichzeitige Anforderungen auszuführen, die sich in der Phase „Ausstehend“ / „Normal“ / im Status befinden und für die er gemäß seinen Spezialisierungsregeln qualifiziert ist.

Gleichzeitige Manager-Prozesse
– Handeln Sie unabhängig
– Wählen Sie nur Anfragen aus, die:(a) den Manager-Spezialisierungsregeln entsprechen, (b) ausstehend/normal sind, (c) eine angeforderte Startzeit haben

Beschreibung wichtiger Orakeltabellen von Oracle Concurrent Manager

FND_CONCURRENT_QUEUES
TARGET_NODE
-Wird verwendet, um anzugeben, wo zusätzliche Prozesse gestartet werden sollten
-Wird von Managern verwendet, um zu bestimmen, ob sie sich für die Migration herunterfahren sollten
-Manager vergleichen den beim Start übergebenen Parameterwert mit Dieser Wert
-Wird von der Benutzeroberfläche verwendet, um anzugeben, wo Prozesse vorhanden sind (im Fall der Migration nicht ganz korrekt)
-Wird von ICM basierend auf primären und sekundären Einstellungen zugewiesen

NODE_NAME
-Gibt den primären Knoten für PCP an – gerichtetes Laden
-Wo Prozesse gestartet werden sollten, es sei denn, der Knoten ist nicht online oder wurde als nicht verfügbar bestimmt
-Wenn kein Knoten angegeben ist, weist ICM das Ziel zu Knoten standardmäßig auf NODE_NAME2
-Zeigt sekundären Knoten für PCP an – gerichtetes Last-Failover
-Wird nur als TARGET_NODE zugewiesen, wenn primärer Knoten nicht verfügbar ist

FND_CONCURRENT_PROCESSES
NODE_NAME
-Zeigt an, wo der Manager-Prozess ausgeführt wird
-Zeigt auch an, wo die Dateien des Managers existieren
-Befüllt mit dem Wert von uname() (physischer Maschinenname)
- Wird von ICM beim Beenden des Prozesses verwendet
- Wird beim Anzeigen der Protokolldatei in der Benutzeroberfläche (UI) verwendet
- Wird vom Bereinigungsprogramm zum Löschen der Prozessprotokolldatei verwendet
- Kann für Berechnungen der Arbeitslaststatistik verwendet werden
– Wird wahrscheinlich von RPMs verwendet, um zu versuchen, einen lokalen OPP zu finden.
– Wird ähnlich in 11i.X verwendet, um Reports Server zu finden.

FND_CONCURRENT_REQUESTS
LOGFILE_NODE_NAME, OUTFILE_NODE_NAME
-Geben Sie an, wo Dateien vorhanden sind
-Wird in der Benutzeroberfläche (UI) zur Dateianzeige verwendet
-Wird vom Bereinigungsprogramm zum Löschen von Dateien verwendet
-Wert ausgefüllt durch mgr-Prozess, basierend auf einem eigenen Knoten

FND_NODES

NODE_NAME
-Gibt den Knotennamen an, in dem sich die DBC-Datei befindet.
-Das Adgendbc.sh-Skript erstellt eine DBC-Datei.

SERVER_ID
-Wird verwendet, um Verbindungen vom Knoten zu authentifizieren.
-Aktualisiert von adgendbc.sh, das die AdminAppServer-API aufruft.

Concurrent Manager-Tabellen

FND_NODES: Enthält alle Informationen auf Knotenebene

FND_CONCURRENT_PROCESSES : Enthält alle gleichzeitigen Manager-Prozessinformationen.
FND_CONCURRENT_REQUESTS : Enthält einen vollständigen Verlauf aller gleichzeitigen Anfragen (sowohl vergangene als auch solche, die in Zukunft ausgeführt werden sollen).

FND_CONCURRENT_QUEUES :Enthält die Informationen für alle im System erstellten gleichzeitigen Manager
FND_CONCURRENT_PROGRAMS :Enthält die Informationen für alle im System verfügbaren gleichzeitigen Programme
FND_EXECUTABLES
FND_CP_SERVICES
FND_CONCURRENT_QUEUE_SIZE
FND_CONCURRENT_QUEUE_CONTENT
FND_CONCURRENT_PROGRAM_SERIAL
FND_CONCURRENT_TIME_PERIODS
FND_CONCURRENT_PROCESSORS

FNDSVCRG
Die ausführbare FNDSVCRG-Datei wird von den Steuerskripten ausgelöst, bevor und nachdem ein Skript den Dienst startet oder stoppt. FNDSVCRG stellt eine Verbindung zur Datenbank her, um die Konfiguration des Seed-GSM-Dienstes zu überprüfen. Wenn der betreffende Dienst nicht für die Verwaltung unter GSM aktiviert ist, wird die ausführbare FNDSVCRG-Datei nichts tun und beendet werden. Das Skript würde dann weiterhin seine normalen Start-/Stopp-Aktionen ausführen. Wenn der Dienst für die GSM-Verwaltung aktiviert ist, aktualisiert die ausführbare Datei FNDSVCRG dienstbezogene Informationen in der Datenbank, einschließlich des Umgebungskontexts, des aktuellen Speicherorts der Dienstprotokolldatei und des aktuellen Zustands des Dienstes

Beschreibung des Status der gleichzeitigen Anfragephase

AUSSTEHEND/Normal -Anfrage wartet auf den nächsten verfügbaren Manager.
AUSSTEHEND/Standby - Die Anfrage zum Ausführen des Programms ist mit einem anderen derzeit ausgeführten Programm nicht kompatibel.
AUSSTEHEND/Geplant - Die Anfrage soll zu einem späteren Zeitpunkt oder Datum gestartet werden.
AUSSTEHEND/Wartend -Eine untergeordnete Anforderung wartet darauf, dass ihre übergeordnete Anforderung sie als ausführungsbereit markiert. Beispielsweise muss eine Anforderung in einem Anforderungssatz, der sequenziell ausgeführt wird, warten, bis eine vorherige Anforderung abgeschlossen ist.
LÄUFT/Normal -Anfrage läuft normal.
LÄUFT/Pausiert - Übergeordnete Anfrage pausiert, bis alle untergeordneten Anfragen ausgeführt werden. Beispielsweise wird ein Anforderungssatz angehalten, damit alle Anforderungen im Satz abgeschlossen werden können.
LÄUFT/Fortgesetzt - Alle Anfragen, die von derselben übergeordneten Anfrage gesendet wurden, wurden ausgeführt. Die übergeordnete Anfrage wird wieder ausgeführt.
LÄUFT/Beendet - Die Anfrage wird beendet, indem Sie im Fenster „Anfragen“ auf die Schaltfläche „Anfrage abbrechen“ klicken.
ABGESCHLOSSEN/Normal -Anfrage erfolgreich abgeschlossen.
ABGESCHLOSSEN/Fehler - Die Anfrage konnte nicht erfolgreich abgeschlossen werden.
ABGESCHLOSSEN/Warnung -Anfrage mit Warnungen abgeschlossen. Beispielsweise wird eine Anfrage erfolgreich generiert, aber nicht gedruckt.
ABGESCHLOSSEN/Storniert - Ausstehende oder inaktive Anfragen werden storniert, indem Sie im Fenster „Anfragen“ auf die Schaltfläche „Anfrage stornieren“ klicken.
ABGESCHLOSSEN/Beendet - Die Anfrage wird beendet, indem Sie im Fenster „Anfragen“ auf die Schaltfläche „Anfrage abbrechen“ klicken.
INAKTIV/Deaktiviert - Programm zum Ausführen der Anforderung ist nicht aktiviert. Wenden Sie sich an Ihren Systemadministrator.
INAKTIV/Angehalten- Eine ausstehende Anfrage wird zurückgestellt, indem Sie im Fenster „Anfragen“ auf die Schaltfläche „Anfrage halten“ klicken.
INAKTIV/Kein Manager -Es ist kein Manager zum Ausführen der Anfrage definiert. Wenden Sie sich an Ihren Systemadministrator. Der Status Kein Manager wird auch vergeben, wenn alle Manager durch Run-Alone-Anfragen gesperrt sind.

Wie starte ich den gleichzeitigen Manager in Oracle Apps r12

Concurrent Manager in R12 starten
Stellen Sie eine Verbindung zum Benutzer der Anwendungsebene her, normalerweise dessen applmgr

cd $ADMIN_SCRIPTS_HOME
./adcmctl.sh start apps/<apps-pass>

Wie man Concurrent Manager in Oracle Apps r12 stoppt

Concurrent Manager in R12 stoppen
Stellen Sie eine Verbindung zum Benutzer der Anwendungsebene her, normalerweise dessen applmgr

cd $ADMIN_SCRIPTS_HOME
./adcmctl.sh stop apps/<apps-pass>

So überprüfen Sie den Status Concurrent Manager in Oracle Apps r12

Überprüfen Sie den Status des gleichzeitigen Managers
Stellen Sie eine Verbindung zum Benutzer der Anwendungsebene her, normalerweise dessen applmgr

cd $ADMIN_SRCIPTS_HOME
./adcmctl.sh status apps/<apps-pass>

Speicherort der Concurrent Manager-Protokolldatei in R12

Concurrent Manager, ICM und Concurrent Request generieren alle die Protokolldateien

A) Concurrent Request Log File – dokumentiert die Ausführung einer bestimmten Anfrage ( l.req )
B) Manager Log File – dokumentiert die Leistung eines gleichzeitigen Manager-Prozesses. ( W.mgr )
C) Internal Manager Log File – dokumentiert die Leistung des ICM.(std.mgr). Diese Protokolldatei zeigt die Parameter an, die mit dem Befehl „adcmctl“ verwendet werden.

wenn $APPLCSF gesetzt ist

Protokolldateien befinden sich im Ordner $APPLCSF/$APPLLOG.
Protokolldateien können auch in den Anwendungen über das Formular zum Anzeigen gleichzeitiger Anfragen eingesehen werden

R12.2  APPLCSF =$NE_BASE/inst//logs/appl/conc/log

R12.1 APPLCSF=$INST_TOP//logs/appl/conc/log

Wenn $APPLCSF nicht gesetzt ist

Protokolldateien befinden sich im Ordner $PRODUCT_TOP/$APPLLOG.

Ähnlich für Ausgabedateien,

wenn $APPLCSF gesetzt ist

R12.2 APPLCSF=$NE_BASE/inst//logs/appl/conc/

R12.1 APPLCSF=$INST_TOP//logs/appl/conc/

Concurrent Manager-Fehlerbehebung

Wie überprüfen Sie den Status der gleichzeitigen Oracle-Manager vom Betriebssystem
–Linux-Befehl:

$ ps -ef | grep LIB

– Beachten Sie, dass der Internal Concurrent Manager in dieser Liste erkennbar ist, weil sein Befehl „FNDLIBR FND CPMGR …“ lautet, während die anderen eher „FNDLIBR FND Concurrent_Processor …“ anzeigen.
– Die Unix-Benutzer-ID, die in der ersten Spalte davon angezeigt wird Auflistung ist entscheidend:Diese gleichzeitigen Verwaltungsprozesse sollten der gleichen Unix-Benutzer-ID gehören, die den Anwendungscode ($APPL_TOP und seine Unterverzeichnisse) besitzt; dieser Nutzer wird normalerweise als "applmgr"

bezeichnet

Wohin gehen all die Dateien, die von den gleichzeitigen Oracle-Managern generiert werden

– Die ICM-Protokolldatei befindet sich im Verzeichnis „$FND_TOP/log“ und stimmt normalerweise mit „std.mgr“ überein.
– Die Protokolldateien der Worker werden in „$FND_TOP/log“ gespeichert und mit „W.mgr“ verknüpft.
-The Log-/Out-Dateien für gleichzeitige Anfragen werden im obersten Produktverzeichnis abgelegt, das mit dem Produkt verknüpft ist, das die Anfrage ausführt:Log-/Out-Dateien für AR-Berichte werden beispielsweise unter $AR_TOP abgelegt.
- Die Log-Dateien für gleichzeitige Anfragen werden in $ abgelegt APPLLOG-Unterverzeichnis unter dem entsprechenden obersten Produktverzeichnis und Übereinstimmung mit l
.req
-Die Ausgangsdateien für gleichzeitige Anfragen gehen in das Unterverzeichnis $APPLOUT
-Wenn APPLCSF gesetzt ist, sollte es auf den vollständigen Pfad zu einem Verzeichnis zeigen, das die Unterverzeichnisse $APPLLOG und $APPLOUT hat. Dieses $APPLCSF-Verzeichnis wird anstelle der verschiedenen Top-Verzeichnisse der Produkte verwendet, um
alle zu schreiben die Log/Out-Dateien nach.


Die häufigsten Concurrent Manager-Probleme werden durch Dateischutzprobleme auf Unix-/Linux-Ebene verursacht.

-Starten Sie die gleichzeitigen Manager als applmgr?
-Kann applmgr Folgendes tun, um eine Datei im
$FND_TOP/$APPLLOG-Verzeichnis zu erstellen?
$FND_TOP/$APPLOUT-Verzeichnis?
Unix:$ touch $FND_TOP/$APPLLOG/a
-Wenn dies fehlschlägt, wem gehört das Verzeichnis?
Unix:$ ls -ld $FND_TOP/$APPLLOG
-Ist dieses Verzeichnis ein symbolischer Link? Wenn ja, welche Schutzmaßnahmen gibt es für das Verzeichnis, auf das es verweist?
-Geht Ihnen auf dieser Partition der Speicherplatz aus? i-nodes?
Unix:$ df -k
Unix (auf einigen Systemen) um i-nodes zu prüfen:$ df -i
-Ist APPLCSF gesetzt?
-Wenn ja , kann applmgr dies tun?
Unix:$ touch $APPLCSF/$APPLLOG/a
-Überprüfen Sie $APPLOUT-Verzeichnisse (normalerweise „out“) genau wie Protokollverzeichnisse.

Wenn ein PL/SQL Concurrent Program nicht in eine externe Datei schreiben kann, erhalten Sie eine Fehlermeldung ähnlich der folgenden:

MSG-00102: Error Message :ORA-20100: File o0000071.tmp creation for FND_FILE failed.
You will find more information on the cause of the error in request log.
ORA-06512: at "APPS.FND_FILE", line 378
ORA-06512: at "APPS.FND_FILE", line 473
ORA-06512: at "APPS.AP_XYZ", line 192
REP-1419: 'beforereport': PL/SQL program aborted.

HINWEIS:Anwendungen erzeugen auch temporäre PL/SQL-Ausgabedateien, die bei der gleichzeitigen Verarbeitung verwendet werden. Diese Dateien werden an eine Position auf dem Datenbankserverknoten geschrieben, die durch die APPLPTMP-Umgebungseinstellung angegeben ist. Das APPLPTMP-Verzeichnis muss dasselbe Verzeichnis sein, das durch den Parameter utl_file_dir in Ihrer Datenbankinitialisierungsdatei angegeben ist.
.
Rapid Install legt sowohl APPLPTMP als auch den Parameter utl_file_dir auf dasselbe Standardverzeichnis fest. Da die in diesem Verzeichnis abgelegten temporären Dateien kontextsensitive Informationen enthalten können, sollte es sich um ein sicheres Verzeichnis auf dem Datenbankserverknoten mit Lese- und Schreibzugriff für den Eigentümer des Datenbankservers handeln. In einem System mit mehreren Knoten muss das von APPLPTMP definierte Verzeichnis nicht auf den Servern der Anwendungsebene vorhanden sein. Während eines Upgrades mit AutoUpgrade müssen Sie den Parameterwert utl_file_dir für die Umgebungseinstellung APPLPTMP angeben.

Um einzugrenzen, wo das Problem liegt, überprüfen Sie Folgendes:

1) Stellen Sie sicher, dass der Name der Datei gültig ist (der Dateiname sollte keine Zeichen wie „^“) enthalten

2) Stellen Sie sicher, dass APPLPTMP auf ein gültiges Verzeichnis eingestellt ist und dass SOWOHL der Benutzer applmgr als auch der Datenbankbenutzer Lese- und Schreibberechtigungen für dieses Verzeichnis haben (normalerweise kann es auf dasselbe Verzeichnis wie APPLTMP eingestellt werden)

3) Stellen Sie sicher, dass die Datei nicht in dem Verzeichnis beendet wird, auf das APPLPTMP

zeigt

4) Stellen Sie sicher, dass das Verzeichnis, auf das APPLPTMP zeigt, der erste Eintrag in utl_file_dir ist. Stellen Sie außerdem sicher, dass alle Einträge in utl_file_dir gültig sind und dass applmgr über Lese-/Schreibberechtigungen verfügt.

Wenn Sie ein spfile verwenden, überprüfen Sie die richtige Syntax, um utl_file_dir:

festzulegen

Bsp.

ALTER SYSTEM SET UTL_FILE_DIR='directory1','directory2' scope=spfile;

5) Wenn Sie immer noch Probleme haben, prüfen Sie, ob Sie eine Datei direkt mit FND_FILE schreiben können, dem von der Anwendung verwendeten Paket. Führen Sie in SQLPLUS, verbunden als App-Benutzer, Folgendes aus:

SQL> exec FND_FILE.PUT_LINE(FND_FILE.LOG, 'THIS IS A TEST');

Dies sollte eine Datei auf APPLPTMP ausgeben.

Wenn dieser Test funktioniert, zeigt dies an, dass FND_FILE in Ordnung ist und das Problem möglicherweise bei der Anwendung liegt.

Möglicherweise möchten Sie für diesen Test nur einen Eintrag in utl_file_dir belassen.

6) Wenn Sie immer noch Probleme haben, prüfen Sie, ob Sie eine Datei mit UTL_FILE schreiben können, die von FND_FILE verwendet wird.

Führen Sie das PL/SQL unten aus und wechseln Sie zum ersten Eintrag in utl_file_dir (möglicherweise möchten Sie für diesen Test nur einen Eintrag in utl_file_dir belassen).

set serveroutput on
DECLARE file_location VARCHAR2(256) := '';
file_name VARCHAR2(256) := 'utlfile1.lst';
file_text VARCHAR2(256) := 'THIS IS A TEST';
file_id UTL_FILE.file_type;
BEGIN
file_id := UTL_FILE.fopen(file_Location,file_name, 'W');
UTL_FILE.put_line(file_id, file_text);
UTL_FILE.fclose(file_id);
EXCEPTION
WHEN UTL_FILE.INVALID_PATH
THEN
dbms_output.put_line('Invalid path ' || SQLERRM);
WHEN OTHERS
THEN
dbms_output.put_line('Others '|| SQLCODE || ' ' || SQLERRM);
END;
/

Dieses Programm sollte eine Datei im angeforderten Verzeichnis ausgeben. Wenn der Test fehlschlägt, liegt das Problem wahrscheinlich auf der Datenbankseite.

GLEICHZEITIGE VERARBEITUNG VON SERVERSCRIPTS


afcmstat.sql Zeigt alle definierten Manager, ihre maximale Kapazität, PIDs und ihren Status an.
afimchk.sql Zeigt den Status der aktiven ICM- und PMON-Methode sowie die Protokolldatei des ICM an und bestimmt, ob der gleichzeitige Manager-Monitor ausgeführt wird.
afcmcreq.sql Zeigt den Concurrent Manager und den Namen seiner Protokolldatei an, die eine Anfrage verarbeitet hat.
afrqwait.sql Zeigt die ausstehenden, gehaltenen und geplanten Anfragen an.
afrqstat.sql Zeigt eine Zusammenfassung der Ausführungszeit und des Status gleichzeitiger Anfragen seit einem bestimmten Datum an.
afqpmrid.sql Zeigt die Betriebssystemprozess-ID des FNDLIBR-Prozesses basierend auf einer gleichzeitigen Anforderungs-ID an. Die Prozess-ID kann dann mit dem ORADEBUG-Dienstprogramm verwendet werden.
afimlock.sql Zeigt die Prozess-ID, das Terminal und die Prozess-ID an, die möglicherweise Sperren verursachen, auf deren Erhalt ICM und CRM warten. Sie sollten dieses Skript ausführen, wenn es beim Senden von Jobs zu langen Verzögerungen kommt oder wenn Sie vermuten, dass sich der ICM mit einem anderen Oracle-Prozess im Stau befindet.

So führen Sie eine gleichzeitige Manager-Optimierung durch

Optimieren des Internal Concurrent Manager (ICM)

Die ICM-Performance wird durch die drei wichtigen Oracle-Parameter PMON-Zyklus, Queue-Größe und Ruhezeit beeinflusst.

PMON-Zyklus – Dies ist die Anzahl der Ruhezyklen, die der ICM zwischen der Überprüfung auf gleichzeitige Managerausfälle wartet, die standardmäßig auf 20 eingestellt ist. Sie sollten den PMON-Zyklus auf eine Zahl kleiner als 20 ändern, wenn Ihre gleichzeitigen Manager Probleme mit anormalen Problemen haben Kündigungen.

Warteschlangengröße – Die Warteschlangengröße ist die Anzahl der PMON-Zyklen, die der ICM zwischen der Überprüfung auf deaktivierte oder neue gleichzeitige Manager wartet. Der Standardwert für die Warteschlangengröße von 1 PMON-Zyklus sollte verwendet werden.

Ruhezeit – Der Parameter Ruhezeit gibt die Sekunden an, die der ICM warten soll, bis er nach Anfragen sucht, die auf die Ausführung warten. Die Standardruhezeit ist 60, aber Sie können diese Zahl verringern, wenn Sie sehen, dass viele Anfragen warten (Ausstehend/Normal). Wenn Sie diese Zahl jedoch auf einen sehr niedrigen Wert reduzieren, führen viele zu einer übermäßigen CPU-Auslastung.

Anpassen der individuellen Concurrent Manager-Cachegröße

Die Leistung des gleichzeitigen Managers kann auch verbessert werden, indem die Größe des Manager-Cache auf mindestens das Doppelte der Anzahl der Zielprozesse erhöht wird. Die Cachegröße gibt die Anzahl der Anforderungen an, die jedes Mal zwischengespeichert werden, wenn der Concurrent Manager aus der Tabelle FND_CONCURRENT_REQUESTS liest. Durch Erhöhen der Cache-Größe wird der Durchsatz der Manager erhöht, indem versucht wird, Ruhezeiten zu vermeiden.

Gleichzeitige Anfragen bereinigen
Es ist ersichtlich, dass, wenn die Datensätze in FND_CONCURRENT_PROCESSES und FND_CONCURRENT_REQUESTS 50K überschreiten, ernsthafte Leistungsprobleme in Ihren Oracle-Anwendungen auftreten können. Um diese Probleme zu vermeiden, sollten wir regelmäßig Daten in diesen Tabellen löschen, indem wir eine spezielle Anfrage mit dem Namen „Gleichzeitige Anfragen und/oder Managerdaten bereinigen“ verwenden. Sie sollte so geplant werden, dass sie regelmäßig ausgeführt wird. Diese Anforderung kann so konfiguriert werden, dass die Anforderungsdaten aus den FND-Tabellen sowie die Protokolldateien und Ausgabedateien, die sich auf der Festplatte ansammeln, gelöscht werden.

Analysieren von Oracle Apps-Wörterbuchtabellen für hohe Leistung

Concurrent Manager-Tabellen können im Laufe der Zeit fragmentiert werden, daher wird empfohlen, sie bei regelmäßiger Wartung neu zu erstellen.
Außerdem ist es auch sehr wichtig, die Anforderung zum Sammeln von Tabellenstatistiken auszuführen FND_CONCURRENT_PROCESSES
FND_CONCURRENT_PROGRAMS
FND_CONCURRENT_REQUESTS,
FND_CONCURRENT_QUEUES.

Ich hoffe, Ihnen gefällt dieser Beitrag zu Oracle Concurrent Manager .

Auch lesen
Concurrent Manager-Abfragen:Dieser Artikel enthält die Top 30 Concurrent Manager-Abfragen für Concurrent Manager-Fehlerbehebung, Auflösung, Laufzeit, Details.
ORA-01427:Sehen Sie sich dies für die Lösung zu ORA-01427 an:einzeilig Unterabfrage gibt mehr als einen Zeilenfehler zurück, wie man es löst, wenn es mit Concurrent Manager passiert
Anfragesatz in Oracle-Apps:Anfragesatz gibt die Möglichkeit, denselben Satz von Anfragen regelmäßig mit einer einzigen Transaktion zu senden.
Fragen zum gleichzeitigen Manager-Interview ::Schauen Sie sich 24 Fragen zum gleichzeitigen Manager-Interview an, um Ihnen beim EBS-Interview zu helfen. Dies besteht aus allen möglichen Fragen zum Standardmanager, Servicemanager
Parallel Concurrent Processing:Was ist PCP, wie wird es eingerichtet, wie wird der interne Monitor definiert
Oracle Concurrent Manager:Wie eine E-Business Suite Concurrent Manager Process Works,Oracle Concurrent Manager,Was ist ein interner Monitor,Was ist Service Manager und Fehlerbehebung
https://docs.oracle.com/cd/E18727_01/doc.121/e12893/T174296T174302.htm

Empfohlene Kurse

Im Folgenden finden Sie einige der empfohlenen Kurse, die Sie kaufen können, wenn Sie einen Schritt weiterkommen möchten

Unten finden Sie die Links zu einigen der Kurse


Oracle DBA 11g/12c – Datenbankverwaltung für Junior DBA :Dieser Kurs eignet sich für Personen, die als Junior DBA beginnen oder Oracle DBA werden möchten. Dies vermittelt ein gutes Verständnis von Backup &Recovery und allgemeinen Verwaltungsaufgaben
Oracle Database:Oracle 12C R2 RAC Administration :Dieser Kurs behandelt die Installation und Verwaltung von Oracle RAC. Ein guter Kurs für Oracle DBA, der seine Fähigkeiten für Oracle RAC verbessern möchte
Oracle Data Guard:Datenbankverwaltung für Oracle 12C R2 :Dieser Kurs behandelt die Installation und Verwaltung von Oracle Dataguard. Ein guter Kurs für Oracle DBA, der seine Fähigkeiten für Oracle Dataguard verbessern möchte