Я пытаюсь выяснить способ обмена памятью между процессами python. В основном существуют объекты, которые существуют, что несколько процессов python должны иметь возможность читать (читать только) и использовать (без мутации). Прямо сейчас это реализовано с использованием redis + strings + cPickle, но cPickle занимает драгоценное время процессора, поэтому я не хочу этого использовать. Большинство реализаций разделяемой памяти python, которые я видел в интернатах, похоже, требуют файлов и рассолов, которые в основном являются тем, что я делаю, и точно, чего я пытаюсь избежать.
Что мне интересно, если бы был способ написать подобный... в основном базу данных/сервера объектов python в памяти и соответствующий модуль C для взаимодействия с базой данных?
В основном модуль C запрашивал у сервера адрес для записи объекта, сервер отвечал бы адресом, затем модуль записывал бы объект и уведомлял сервер о том, что объект с заданным ключом был записан в диска в указанном месте. Затем, когда какой-либо из процессов хотел получить объект с заданным ключом, он просто попросил бы db для ячейки памяти для данного ключа, сервер ответит местоположением, и модуль будет знать, как загрузить это пространство в памяти и перенесите объект python обратно в процесс python.
Неужели это абсолютно необоснованно или просто чертовски сложно реализовать? Я погоню за чем-то невозможным? Любые предложения приветствуются. Спасибо, интернет.