SQlite mit PhP

Fragen zu allen anderen Programmiersprachen.
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Re: SQlite mit PhP

Beitrag von bobobo »

so 'n Mulituserzugriff hab ich mal gemanagt, indem ich dann einen eventuellen DatabaseError()
entsprechend ausgewertet hab und dann den Befehl im Fehlerfall eben immer wiederholt hab bis
kein Fehler auftrat oder ein Zähler zu gross wurde. So ich weiß, funktioniert das Programm heute
noch. Bis zu 5 User greifen auf eine sqliteDB zu die auch noch irgendwo im Netz rumliegt.


Die Datenbank wird ja immer nur kurzzeitig gelockt, so dass ein direkt konkurrierender Zugriff nicht,
aber ein timegesplicter durchaus drin ist. Muss man eben die Abfrage ne Winzigkeit aufwändiger
gestalten, ist aber auch kein Riesending.
Wenn dann noch sowas wie ein last-UPdate-timestamp gesetzt wird den sich die unterschiedlichen
Anwendungen zu Gemüte führen, ist das handling für die gerade nichts mit der DB zu tum habenden
Anwendungen auch transparent.
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
Blackskyliner
Beiträge: 532
Registriert: 28.07.2005 00:54
Wohnort: /home/Blackskyliner/

Re: SQlite mit PhP

Beitrag von Blackskyliner »

Mal davon abgesehen, dass SQLite nur für SingleUser ausgelegt ist und es für Multiuserzugriffe andere Datenbanksysteme gibt, wie z.B. MySQL oder der Nachfolger MariaDB.... Aber naja... Ich will ja nichts gesagt haben :P

Greez,
Blackskyliner
Keine meiner Antworten ist endgültig, es kann passieren, dass ich den so eben geposteten Beitrag noch mehrmals ändere, um Doppelposts zu umgehen.
_________________
Purebasic Windows 7 x64 & Linux (Ubuntu 10.04LTS) 4.50[x64|x86] Nutzer
_________________
Projekte: YAED - Yet another Event Dispatcher
John
Beiträge: 33
Registriert: 10.11.2010 11:23
Computerausstattung: Ein stinknormales ASUS Notebook, 15,2 Zoll.
Wohnort: Deutschland, Niedersachsen
Kontaktdaten:

Re: SQlite mit PhP

Beitrag von John »

Hi bobobo,

danke dir.

Also noch mal zum Verständnis; wenn es nur ums lesen geht, ich denke, dann ist das alles kein Problem, richtig?

Kann man doch so sagen, oder?

Ich meine, es geht ja nicht um 3 Millionen Zugriffe pro Sekunde. Sondern sagen wir 3 Leute greifen auf so eine DB zu, und die Wahrscheinlichkeit das auch nur 2 User exakt zum gleichen Zeitpunkt drauf zugreifen (DatabaseQuery) ist vermutlich in so einem Fall kleiner als ein Lottogewinn, oder?

Gut, also nun zum schreibenden Fall, da muss man wohl mehr aufpassen, richtig?

Also beim schreiben (DatabaseUpdate) müste man einfach nur abfragen, ob ein DatabaseError vorliegt? Und/oder wie meinst du das mit dem Timestamp?

Weiterhin stelle ich mir folgendes Problem vor; angenommen ein DS (Datensatz) wurde bereits gelesen und liegt jetzt in einer Form "rum". Der User macht nix. Zeit vergeht...Minuten vielleicht sogar. In der Zwischenzeit hat ein anderer User genau das gleiche gemacht. Aber der ändert den DS nun, und sichert. Nun müsste doch der andere User irgendwie ein Feedback kriegen, so nach dem Motto; "hey, der DS hat sich gerade geändert". Oder???? Wie wird sowas bei professionellen DBs gemacht?

--------------

Hi Blackskyliner,

ja schon, aber es könnte doch sein, dass man sich nun auf SQLite eingeschossen hat, und die Daten braucht, und keine Lust hat die ganzen Daten in eine andere DB zu übertragen, und alles umzuschreiben, was ja auch nicht in 2 Min. gemacht ist.

Es könnte doch sein, dass die Anwendung mit der Zeit gewachsen ist. Und wenn doch klar ist, das nicht 3 Mill. Leute gleichzeitig auf das Datenzeugs zugreifen und nur ganz weniger - weniger als Finger einer Hand - lesend, und noch weniger schreibend drauf zugreifen, dann müsste man sowas doch irgendwie so handeln können, das die DB die Daten nicht kaputtschreibt.

Danke.
Grüße
John

Weniger ist mehr :-)
http://www.loetseite.de - noch ganz jung: etwas über Elektronik.
Antworten