Mam proces Pythona służący jako serwer WSGI-apache. Mam wiele kopii tego procesu uruchomionych na każdym z kilku komputerów. Około 200 megabajtów mojego procesu to dane pythonowe tylko do odczytu. Chciałbym umieścić te dane w segmencie mapowanym w pamięci, aby procesy mogły współdzielić jedną kopię tych danych. Najlepiej byłoby móc dołączyć do tych danych, aby mogły być rzeczywistymi obiektami danych python 2.7, a nie analizować je z czegoś takiego jak pikle lub DBM lub SQLite.Jak przechowywać łatwo Pythona użyteczne struktury danych tylko do odczytu w pamięci wspólnej
Czy ktoś ma przykładowy kod lub wskaźniki do projektu, który zrobił to, aby udostępnić?
"Około 200 megabajtów mojego procesu to dane pythonowe tylko do odczytu." Nie mogłem zrozumieć tej części. Czy możesz podać trochę szczegółów? Jaki rodzaj danych? Co próbowałeś? –
Jakiego systemu operacyjnego używasz i jak się rozwidlają twoje procesy?Jeśli używasz 'vfork', to dziecko udostępnia kopię stron swoich rodziców, dopóki i tak nie napisze do nich. –
Dlaczego korzystanie z usługi Redis nie rozwiązałoby problemu? –