Ich habe einen Python-Prozess als WSGI-Apache-Server dienen. Ich habe viele Kopien dieses Prozesses auf jeder von mehreren Maschinen ausgeführt. Ungefähr 200 Megabyte meines Prozesses sind schreibgeschützte Python-Daten. Ich möchte diese Daten in einem Memory-Mapped-Segment platzieren, damit die Prozesse eine einzelne Kopie dieser Daten gemeinsam nutzen können. Am besten wäre es, an diese Daten anhängen zu können, so dass sie tatsächlich Python 2.7-Datenobjekte sein könnten, anstatt sie aus etwas wie Gurke oder DBM oder SQLite zu analysieren.Wie einfach zu speichern Python nutzbare schreibgeschützte Datenstrukturen im Shared Memory
Hat jemand Beispielcode oder Zeiger auf ein Projekt, das dies zum Teilen getan hat?
"Ungefähr 200 Megabytes meines Prozesses sind schreibgeschützte Python-Daten." Ich konnte diesen Teil nicht verstehen. Können Sie einige Details angeben? Welche Art von Daten? Was hast du versucht? –
Welches Betriebssystem verwenden Sie und wie laufen Ihre Prozesse?Wenn Sie 'vfork' verwenden, teilt das Kind eine Kopie der Seiten seiner Eltern, bis es trotzdem auf sie schreibt. –
Warum sollte Redis nicht Ihr Problem lösen? –