Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

suche Mutex (locking)

Diskussion: suche Mutex (locking) im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Suche eine möglichkeit wie ich mehrere requests synchronisieren kann, damit ich bei gliechzeitigen requests nicht gleichzeitig auf die gleiche ...

Antwort
Alt 21.02.07, 09:21   #1 (permalink)
Moderator
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard suche Mutex (locking)

Anzeige

Suche eine möglichkeit wie ich mehrere requests synchronisieren kann, damit ich bei gliechzeitigen requests nicht gleichzeitig auf die gleiche recource zugreife.

das einzige was ich gefunden habe ist: http://ch2.php.net/manual/de/ref.sem.php

wenn möglich möchte ich was, was immer verfügbar ist und nicht nur, wenn man das mit einkompiliert bzw das modul lädt.

mein konkretes problem:
ich habe daten die ich irgendwie abspeichern muss (keine db zur verfügung). diese daten werden von zeit zu zeit verändert und somit neu geschrieben. dabei wird so vorgegangen:
1) daten einlesen
2) vom user gewünschte änderungen ausführen
3) bei den daten den entsprechenden status ändern (aufgrund der aktion)
4) daten zurückschreiben

das problem entsteht beim zurückschreiben, wenn mehrere prozesse "gleichzeitig" die daten einlesen. jeder request hat nur seine sicht der änderungen und trägt nur diese ein. ohne locking würden die anderen parallelen änderungen verloren gehen.

wohin/wie die daten gespeichert werden, ist mir eigentlich egal. jedoch habe ich wie oben bereits gesagt keine db zur verfügung.

hoffe ich habe mich verständlich ausgedrückt.

soox ist offline   Mit Zitat antworten
Alt 23.02.07, 19:46   #2 (permalink)
Senior Member
 
Benutzerbild von Chakky
 
Registriert seit: 28.10.03
Chakky Leistung: 8086
Chakky eine Nachricht über ICQ schicken
Likes: 110
Standard

ok ich hab ne theorie...

wenn du die datein öffnest kannst du doch den timestamp holen wann die datei zuletzt geändert wurden is,

diesen vergleichst du jetztt beim rückschreiben mit den aktuellen.

wenn sich in der zeit was geändert hat an der datei gibst du eine fehlermeldung aus und fragst den user wie weiter vorgegangen wird ->überschreiben/ranhängen/anzeigen

und dann das spiel von vorne?


ich hoffe ich hab das problem verstanden
__________________
cu
Chakky

we are dreaming in digital
we are living in realtime
we are thinking in binary
we are talking in IP
welcome to our world
Chakky ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 26.02.07, 08:33   #3 (permalink)
Moderator
Themenstarter
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard

funktioniert nicht, wenn z.b. die beiden prozesse (bzw anfragen) wie folgt abgearbeitet werden

Code:
Proc1			| Proc2
timestamp lesen		| 
			| timestamp lesen
datei auslesen		| 
daten verarbeiten	| 
timestamp neu auslesen	| 
			| datei auslesen
			| daten verarbeiten
			| timestamp neu auslesen
			| daten schreiben
daten schreiben		|
was ich brauche ist eine "atormare" funktion welche mir sowas bietet
soox ist offline   Mit Zitat antworten
Alt 26.02.07, 09:35   #4 (permalink)
 
Registriert seit: 30.03.04
hamill Leistung: Facit NTK
Likes: 0
Standard

sowas hies früher lock manager, manchmal sogar Transaktionsmanager :-)

billigere Lösungen:
SQLite. das macht afaik ein ziemlich billiges locking: es kann immer nur einer schreiben.
oder Du machst es wie früher bei unix mit lock files: Dein Program schreibt seine process id (die ist bei unix eindeutig und nur einmal vergeben) in eine Datei, zb /tmp/soox.lock, macht seine Arbeit, und löscht die Datei anschließend. Sieht Dein Programm in /tmp/soox.lock eine Nummer, die ungleich der eigenen process id ist, wartet es.
hamill ist offline   Mit Zitat antworten
Alt 26.02.07, 12:29   #5 (permalink)
Moderator
Themenstarter
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard

suche eigentlich etwas ganz banales damit das auch bei minimalem php funktionsumfang funktioniert. aber so wies scheint, bin ich da mit SQLite am besten beraten.
soox ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » suche Mutex (locking)
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Suche PDA detrexer Kaufberatung 2 06.09.07 22:52
Thread und Mutex Dawen Code Kitchen 0 09.03.07 16:44
Suche PGP WerWas Cryptography & Encryption 16 25.05.05 00:38
Suche tut KroaX Windows 1 11.05.04 15:02
Suche Ms Dos Anonym001 Off topic-Zone 21 03.12.03 11:28


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61