ich möchte eine Variable in Form eines einfachen Dictionary mit max. 10 Einträgen, das in einem Skript generiert und regelmäßig aktualisiert wird (2x pro Minute), mit anderen Skripten teilen, da ich diese Information / Variable dort nicht generieren kann.
Dazu habe ich ein wenig gegoggelt und ein paar Artikel gelesen wie z.B. diesen hier: https://stackoverflow.com/questions/182 ... -in-python
Es gibt diverse Möglichkeiten, die ich nachfolgend mit meinen mittelmäßigen Programmierkenntnissen mal bewertet habe - bevor ich was umsetze, dachte ich, ich frag mal hier, vielleicht hat das ja schon jemand mal gemacht oder ggf. denke ich mal wieder zu kompliziert.
Also...
- In Datei speichern und von dort lesen: Kann man machen und funktioniert, sind aber viele Schreib-/Lesevorgänge auf der Festplatte und finde ich "unschön", obwohls der SSD Platte sicher egal ist
- Multiprocessing mit pipe: Da ich kein Multiprocessing brauche / habe, finde ich es zu aufwendig / falsch
- Modul pickle: Wenn ich das richtig verstanden, zum Speichern von großen Objekten in einer Datei und damit nicht ganz das richtige
- Modul mmap: Mit einem Arbeitsspeicher verknüpftes Lesen/Schreiben einer Datei. Hm, irgendwie auch nicht ganz, oder?
- Modul pymemcache: Speichert Werte in virtuellen Servern, recht einfach umzusetzen
- Modul pylibmc: Ein Wrapper für memcached, auch recht einfach umzusetzen
Mir gefällt pymemcache am Besten, ein einfaches Code-Beispiel dazu sieht so aus:
Code: Alles auswählen
import memcache
shared = memcache.Client(['127.0.0.1:11211'], debug=0)
shared.set('Value', 'Hello')
print shared.get('Value')
Grüße, Andy