我有django应用程序,通过fastcgi在lighttpd下运行。FCGI运行脚本如下所示:python manage.py runfcgi socket=/main.socket
method=prefork \
pidfile=/server.pid \
minspare=5 maxspare=10 maxchildren=10 maxrequests=500 \
我用SQLite。所以我有10个过程,都是用同一个数据库工作的。接下来我有两种观点:
^{pr2}$
如果这些视图是在两个不同的线程中执行的,有时我会在数据库中获取id=1的MyModel实例,并更新param1或param2(但不是同时更新这两个)——这取决于哪个进程是第一个。(当然,在现实生活中id会发生变化,但有时两个进程使用相同的id执行这两个视图)
问题是:我应该怎么做才能获得更新了param1和param2的实例?我需要一些东西来合并不同过程中的更改。在
一个决定是创建进程间锁对象,但在这种情况下,我将得到序列执行视图,它们不能同时执行,所以我请求帮助