之前我问过如何使用Django创建SaaS应用程序的问题 Django and SaaS. How to use separate database for each Django site?
现在,当用户为自己创建一个新实例时,我只需为他创建一个新的settings.py文件,并为其子域创建一个apache配置。现在,当用户尝试访问他的实例时,他只能看到自己的数据库,因此我们完全分离了数据。
现在,在使用这些单独的数据库时尝试执行后台进程时出现问题。后台进程应特定于仅对此实例数据起作用的每个实例。 ZTask守护程序启动一个设置文件。问题是我是否必须为每个Django实例启动一个单独的ztaskd进程?或者我可以为所有实例启动一次ztaskd吗?
答案 0 :(得分:0)
ztaskd
在特定Django实例的上下文中工作,因此您不能为多个Django实例共享一个ZTask守护程序。
您应该使用本地设置为每个Django实例运行ztaskd
。基本上是使用
python manage.py ztaskd --settings=clients.site_settings &
请记住每个实例都有非冲突的ZTASKD_URL
。对于本地ztaskd
ZTASKD_URL = 'ipc:///tmp/%s_ztask.sock' % SITE_NAME
<{3>}中提出的是个好主意。