Zwischen segmentierten und nicht segmentierten Programmen wählen

Für die Entscheidung, ob Sie Ihre Programme als segmentierte oder nicht segmentierte Programme entwerfen, sollten Sie zwei Problembereiche kennen.

Die Auswirkung der Transaktion auf konkurrierende Ressourcen wie die Verwendung von Speicher und Prozessor ist der erste Problembereich. Der zweite Problembereich ist die Auswirkung auf Ressourcen mit exklusiver Nutzung wie Datensätze und wiederherstellbare Dateien, wiederherstellbare Warteschlangen mit transienten Daten und Elemente, für die eine Warteschlange aufgebaut wird.

Nicht segmentierte Programme haben eine große Auswirkung auf den Speicher, da ihre Ausführung länger dauert als die Ausführung der Gesamtheit der Transaktionen, die sich in einem entsprechenden segmentierten Programm befinden. Der Prozessoraufwand ist jedoch niedriger, da nur ein einziges Programm gestartet wird, anstatt ein Programm pro Transaktion.

Ein nicht segmentiertes Programm behält länger als ein entsprechendes segmentiertes Programm die exklusive Nutzung von Ressourcen bei. Aus diesem Grund ist die Antwortzeit für segmentierte Programme kürzer; allerdings ziehen Sie aus Gründen der Wiederherstellung und der Integrität möglicherweise ein nicht segmentiertes Programm vor.

Wenn in den aufgerufenen Programmen Formulare vorhanden sind oder Sie die Datenbank während einer Ausführung von converse sperren müssen, sollten Sie Ihr Programm für eine Ausführung im nicht segmentierten Modus entwerfen.

In der folgenden Liste sind Überlegungen zu segmentierten und nicht segmentierten Programmen enthalten:

Beim Ausführen eines Programms auf einem System, auf dem die Speicherkonkurrenz kein Problem ist, ist die Ausführung im Modus ohne Segmentierung mit dem Wert '1' für die Variable converseVar.commitOnConverse ein guter Kompromiss zwischen der Ausführung im Segmentmodus bzw. der Ausführung im Modus ohne Segmentierung. Dieser Ansatz führt dazu, dass bei jeder Ausführung der Anweisung converse vom Hauptprogramm aus eine Festschreibung erzwungen wird und er weist die guten Leistungsmerkmale des Modus ohne Segmentierung auf; allerdings werden Datei- oder Datenbankressourcen während der Bedenkzeit des Benutzers nicht blockiert.


Feedback