Я пишу небольшое многопоточное приложение на основе python на стороне клиента, которое содержит небольшой веб-сервер (только обслуживает страницу на localhost) и демон. Веб-сервер загружает и помещает данные в постоянный "хранилище данных", а демон обрабатывает эти данные, модифицирует его и добавляет еще несколько. Он также должен следить за синхронизацией с диском.
Я бы хотел как можно больше избежать сложных внешних вещей, таких как SQL или другие базы данных.
Каковы хорошие и простые способы проектирования хранилища данных? Бонусные очки, если ваше решение использует только стандартный питон.
То, что вы ищете, не слишком специфично для Python, потому что AFAIU вы хотите общаться между двумя разными процессами, которые только случайно записаны на Python. Если это действительно ваша проблема, вы должны искать общее решение, а не специфичное для Python.
Я думаю, что простой хранилище данных с ключом, отличное от SQL, например Redis, может быть очень приятным решением для вашей ситуации. Вопреки "сложному" использованию инструмента, разработанного специально для такой цели, на самом деле сделает ваш код более простым.
Если вы настаиваете на решении только для Python, рассмотрите возможность использования привязок Python для SQLite, которые предварительно устанавливаются с помощью Python. SQLite DB может быть одновременно использован двумя процессами безопасным образом, если ваша семантика доступа к данным хорошо определена (т.е. Проблемы, которые вы должны решить в любом случае, инструмент невзирая на).