AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Klatsch und Tratsch Auslagerungsdatei pagefile.sys als Zwischenspeicher nutzen
Thema durchsuchen
Ansicht
Themen-Optionen

Auslagerungsdatei pagefile.sys als Zwischenspeicher nutzen

Ein Thema von jus · begonnen am 17. Feb 2015 · letzter Beitrag vom 19. Feb 2015
 
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#14

AW: Auslagerungsdatei pagefile.sys als Zwischenspeicher nutzen

  Alt 19. Feb 2015, 01:22
Vielleicht war das auch nur eine Beschreibung von Memory Mapped Files. Denn da wäre das genau so wie beschrieben, mit dem Unterschied, dass es nicht die PageFile ist sondern jede X-beliebige Datei.
Würde ich auch vermuten. Um tatsächlich nach dem Absturz konsistente Daten zu haben braucht etwas mehr Aufwand (-> Transaktionen), aber im Prinzip ist das gut möglich.
Das mit den konsistenten Daten ist kein Problem und eine (Datenbank-)Transaktion pfuscht mir da auch nicht rein, im Gegenteil, die sorgt eben genau für die Konsistenz auch in diesem Fall.

Es gibt einfach zwei Arten von Transaktionen:
  1. Datenbank-Transaktion
  2. Business-Transaktion
(siehe Martin Fowler - Pessimistic Offline Lock oder Martin Fowler - Optimistic Offline Lock)

Der Zaubertrick ist jetzt eine Sicherung jedes Schritts der Business-Transaktion in einer Datei (wie auch immer geartet). Bei einem Absturz kann dann die Business-Transaktion daraus einfach wiederhergestellt werden. Zum Abschluss der Business-Transaktion wird natürlich der Datenbank-Server benötigt. Die Business-Transaktion spult nun alles an den DB-Server (in einer DB-Transaktion) rüber. Ist das erfolgreich abgeschlossen worden, wird auch die Business-Transaktion abgeschlossen.

Bricht jetzt die Verbindung zum DB-Server zusammen, dann ist einfach die Business-Transaktion noch offen. Der DB-Server wird nach einem Timeout einfach die Session und damit auch die DB-Transaktion killen und es ist nichts passiert. Bei der nächsten Verbindung zur DB wird das ganze Spiel wiederholt.

Diese Datei mit der Business-Transaktion kann man auch gut und gerne als Auslagerungsdatei bezeichnen, und schon wissen wir woher dieser (Aber)glaube mit der pagefile.sys kommt
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz