我需要创建一个系统来在 linux 系统上存储 python 数据结构,但对来自多个程序/守护进程/脚本的数据具有并发读写访问权限。我的第一个想法是我会创建一个 unix 套接字来监听连接并将请求的数据作为 pickled python 数据结构提供。客户端的任何写入都将同步到磁盘(可能是批量同步,但我不希望它具有高吞吐量,因此仅 Linux vfs 缓存可能会很好)。这确保只有一个进程读取和写入数据。
另一种想法是将 pickled 数据结构保留在磁盘上,并且只允许单个进程通过锁定文件或 token 进行访问...这需要所有访问客户端遵守锁定机制/使用访问模块。
我在看什么? SQLite 可用,但我希望尽可能简单。
你会怎么做?
最佳答案
如果 SQLite 可用,我会使用它。
请参阅此常见问题解答:http://www.sqlite.org/faq.html#q5 -- SQLite(带有 pysqlite [0])应该能够优雅地处理您的并发。
如果愿意,您可以将数据保留为简单的键值对,无需对数据进行所有 BNF。
关于python - 在 Linux 系统上存储 Python 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6147225/