共享内存中的 SQLeT3 数据库



我正在尝试在进程之间共享内存数据库。我正在使用Python的sqlite3。这个想法是在/run/shm中创建一个文件并将其用作数据库。问题是:

  1. 这样安全吗?特别是:读/写锁(fcntl)在shm中的工作方式是否相同?
  2. 这首先是个好主意吗?我想让事情变得简单,而不必创建一个单独的数据库进程。

我已经用shm文件测试了fcntl(在Python中),似乎锁定工作正常。事实上,从过程的角度来看,它是一个文件,操作系统可以正确处理所有内容。

我将保留这个架构,因为它足够简单,而且我没有看到任何(主要)缺点。

最新更新