Hallo,
ich habe folgendes Problem: Ich schreibe gerade eine Anwendung, bei der es eine Pool an bestimmten Resourcen gibt.
Wenn eine Resource belegt ist, will ich irgendwo ein flag setzten. Auf dieses Flag müssen aber alle Benutzer zugriff haben. Möchte nicht auf die Datenbank ausweichen da im Worst Case dieses flag alle paar Sekunden abgefragt werden muss.
Wie kann ich in TG/CherryPy eine solche Globale Variable (z.B. eine dictonary) erstellen?
Vielen Dank
CherryPy / Turbogears: Globale Variable (für alle user)
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Ich hab keine Ahnung von TG/CherryPy... Wenn du nicht die DB nutzten willst, dann schreib doch die Daten in eine Datei... Einfach und schnell wäre eine Liste mit einem bestimmen Platzhalter, also damit man z.B. nur "#".join(daten) beim schreiben und daten.split("#") beim lesen machen muß... Das sollte recht schnell gehen...
Dumm ist allerdings, wenn gleichzeitig mehrere Leute in die Datei schreiben wollen
Dumm ist allerdings, wenn gleichzeitig mehrere Leute in die Datei schreiben wollen
Ne, Datei ist noch ungeigneter. Das problem ist, das es sein kann, das extrem viele Anfragen kommen, ob nun eine ressource frei ist.
Und immer ein DB-Statement absetzten ist nicht so der hit. Werd das aber erstmal so realisieren. Am anfang sind es noch wenig Nutzer -> wenig abfragen. Und dann muss ich mal weiter schauen.
mfg
joker
Und immer ein DB-Statement absetzten ist nicht so der hit. Werd das aber erstmal so realisieren. Am anfang sind es noch wenig Nutzer -> wenig abfragen. Und dann muss ich mal weiter schauen.
mfg
joker
-
- User
- Beiträge: 188
- Registriert: Donnerstag 20. Juli 2006, 20:46
- Wohnort: Wien
- Kontaktdaten:
Ich würd mir die Sorgen erst machen wenn im tatsächlichen Fall jede Sekunde hunderte male darauf zugegriffen wird und es merkbar die Performance beeinträchtigt.joker hat geschrieben:Möchte nicht auf die Datenbank ausweichen da im Worst Case dieses flag alle paar Sekunden abgefragt werden muss.
Zu frühes Optimieren kann ein K.O. für ein Projekt werden.
p.s. SQL Datenbanken können auch cachen
lgherby