phpbar.de logo

Mailinglisten-Archive

[php] Transaktionssichere Dateioperationen

[php] Transaktionssichere Dateioperationen

Andreas Ahlenstorf lists at ahlenstorf.ch
Fre Jun 10 21:06:18 CEST 2005


Hallo,

Ich habe ein Applikation vor mir, die ~95 Prozent der Operationen in  
der Datenbank macht, alles mit Transaktionen gesichert. Ist von der  
Datenbank her wunderbar, da sie selbst bei gr�beren Fehlern in einem  
konsistenten Zustand ist. Ein Problem stellen die restlichen 5 der  
Operationen dar, da handelt es sich um Uploads und andere  
Dateioperationen. Die sind nat�rlich nicht transaktionssicher und so  
passiert es ab und zu, dass in der Datenbank z.B. nach einem Rollback  
noch die alten Dateinamen stehen w�hrend die Dateien schon gel�scht  
sind oder inzwischen anders heissen. Nun denke ich dar�ber nach, wie  
ich das Problem l�sen k�nnte:

- Dateien in die Datenbank packen. Problem mit den Dateioperationen  
gel�st. Schl�gt das Einlesen in die Datenbank fehl, ist's egal, weil  
der Datensatz sowieso nicht da ist. Andererseits bin ich der Meinung,  
dass Bilder etc. direkt auf die Festplatte geh�ren und keinen PHP- 
Prozess brauchen, um an den Anwender ausgeliefert zu werden.
- Dateioperationen in selbst gebaute Funktionen einwickeln, welche  
die gr�bsten Probleme eliminieren, indem z.B. Dateien vorerst nur zum  
L�schen markiert und nach Vollendung der Aktion endg�ltig von der  
Platte geputzt werden. Nachteil: Sehr aufwendig.

Bevor ich ausw�rfle, was ich mache, w�rde ich gerne wissen, wie ihr  
das Problem l�sen w�rdet... vielleicht habe ich ja eine ganz nahe  
liegende L�sung �bersehen.

Gruss,
Andreas

php::bar PHP Wiki   -   Listenarchive