Ein CICSplex besteht aus zwei oder mehr CICS-Regionen, die unter Verwendung von CICS-Funktionen für die übergreifende Kommunikation miteinander verbunden sind. Eine CICS-Funktion namens dynamisches Transaktionsrouting unterstützt den Lastausgleich, indem eine Transaktion aus einem Terminal dynamisch an eine der Regionen weitergeleitet wird, die über die Ressourcen für die Verarbeitung der Transaktion verfügen.
Die transaktionsübergreifende Affinität liegt vor, wenn zwei oder mehr CICS-Transaktionen einander Informationen auf eine Weise übergeben, die eine Ausführung der Transaktionen in derselben CICS-Region erforderlich macht. Wenn die transaktionsübergreifende Affinität vorliegt, müssen Sie die Transaktionen für CICS definieren, damit sie in derselben Region weitergeleitet werden.
In den folgenden Abschnitten sind Hinweise zum Transaktionsrouting für CICS-Programme beschrieben, die mit EGL erstellt wurden. Ein umfassendere Erläuterung des Transaktionsroutings enthält die Veröffentlichung Dynamic Routing in a CICSplex, IBM Form SC33-1012.
Segmentierte Programme verwenden eine temporäre Speicherwarteschlange (die Arbeitsdatenbank), um den Status des Programmdatenaustausches während einer Anweisung converse oder show zu speichern. Alle Segmente des Datenaustausches müssen auf dieselbe temporäre Speicherwarteschlange zugreifen können und weiterhin dieselbe Terminal-ID verwenden.
Programme können gemeinsam genutzte EGL-Datentabellen in der CICS-Umgebung aktualisieren. Die gemeinsam genutzte Datentabelle wird mit der CICS-Funktion GETMAIN angefordert; Aktualisierungen sind nur für Programme zugänglich, die in derselben Region ausgeführt werden. Alle Transaktionen, die von der Übergabe von Informationen über eine gemeinsam genutzte Datentabelle abhängig sind, müssen an dieselbe Region weitergeleitet werden.
Weitere Informationen zur Verwendung von temporären Speicherwarteschlangen beim Transaktionsrouting enthält das CICS-Handbuch.
Druckausgabe kann an eine Warteschlange mit transienten Daten weitergeleitet werden. Das Programm sammelt die Druckausgabe in einer temporären Speicherwarteschlange. Sobald die Ausgabe vollständig ist, kopiert das Programm die Ausgabe in die Warteschlange mit transienten Daten. Zu diesem Zweck wird die Funktion ENQ/DEQ verwendet, damit sichergestellt ist, dass keine Ausgabe von mehreren Transaktionen in demselben System vorhanden ist.
Da die Funktion ENQ/DEQ nur innerhalb einer Region gültig ist, müssen Sie die Warteschlange als lokale Warteschlange definieren, um eingefügte Ausgabe von mehreren Regionen zu verhindern.
Falls Sie die Warteschlange so definiert haben, dass das Terminaldruckprogramm FZETPRT ausgelöst wird, müssen Sie auch die Transaktion für FZETPRT als lokale Transaktion der Region definieren, in der sich die Warteschlange befindet.
Fehlernachrichten aus Rational COBOL Runtime können an eine Warteschlange mit transienten Daten übertragen werden, die als 'Fehlerzielwarteschlange' bezeichnet wird. Definieren Sie die Warteschlange als lokale Warteschlange für jede Region, in der ein EGL-Programm ausgeführt werden kann. Dies stellt sicher, dass Nachrichten, die sich auf einen einzelnen Fehler beziehen, nicht mit Nachrichten über einen anderen Fehler gemischt werden, der zur gleichen Zeit in einer anderen Region auftritt.
Eine der Optionen, die bei Verwendung des Diagnosesteuerdienstprogramms angegeben werden kann, ist die Inaktivierung einer Transaktion, wenn für diese Transaktion ein Ausführungseinheitenfehler festgestellt wird.
Die Inaktivierungsaktion wird mit der CICS-Funktion SET implementiert und ist nur für die Region gültig, in der der Fehler auftrat.
Die CICS-Dienstprogramme von Rational COBOL Runtime führen Funktionen aus, die eine Regionsaffinität aufweisen. Daher müssen Sie sicherstellen, dass die Transaktion anhand der Benutzer-ID, des Namens der logischen Einheit oder des alternativen Transaktionsnamens an die gewünschte Region weitergeleitet wird. In der folgenden Tabelle sind die Dienstprogramme, die Standardtransaktions-IDs und die Funktionsbeschreibungen aufgeführt.
| Dienstprogramm | Standard-ID | Funktionsbeschreibung |
|---|---|---|
| CICS-Dienstprogrammmenü | ELAM | Menü zur Auswahl der anderen Dienstprogramme (außer Traceerstellung). |
| Neue Kopie | ELAN | Lädt eine neue Kopie von einem Programm, einer Bibliothek, einem Service, einer Formulargruppe oder einer Datentabelle in der Region. |
| Diagnosenachrichtendruck | ELAU | Druckt die der Region zugeordnete Fehlernachrichtenwarteschlange. |
| Diagnosesteuerungsoptionen | ELAC | Legt Fehlermeldungsoptionen für Rational COBOL Runtime fest. Ist regionsabhängig, falls die Optionsdatei (RDO-Datei namens ELACFIL) für jede Region lokal definiert ist. Ist nicht regionsabhängig, falls ELACFIL als gemeinsam genutzte Datei definiert ist, auf die über eine Dateieignerregion zugegriffen wird. |
| Traceerstellung | ELAZ | Von diesem Dienstprogramm festgelegte Traceoptionen werden in Speicher gespeichert, der durch eine CICS-Funktion GETMAIN in der Region angefordert wird, und sind nur in der Region gültig, in der die ELAZ-Transaktion ausgeführt wurde. |