1

我之前问过一个关于如何使用 Django Django 和 SaaS 创建 SaaS 应用程序的问题。如何为每个 Django 站点使用单独的数据库?

现在,当用户为自己创建一个新实例时,我只需为他创建一个新的 settings.py 文件,并为他的子域创建一个 apache 配置。现在当一个用户试图访问他的实例时,他只能看到他自己的数据库,所以我们完全分离了数据。

现在,在拥有这些独立数据库的同时尝试执行后台进程时会出现问题。后台进程应该特定于每个仅作用于该实例数据的实例。ZTask 守护进程需要一个设置文件来启动。问题是我是否必须为每个 Django 实例启动一个单独的 ztaskd 进程?或者我可以为所有实例启动一次 ztaskd 吗?

4

1 回答 1

0

ztaskd在特定 Django 实例的上下文中工作,因此您不能为多个 Django 实例共享一个 ZTask 守护进程。

您应该ztaskd使用其本地设置为每个 Django 实例运行。基本上开始使用

python manage.py ztaskd --settings=clients.site_settings &

记住每个实例都没有冲突ZTASKD_URL。对于本地ztaskd

ZTASKD_URL = 'ipc:///tmp/%s_ztask.sock' % SITE_NAME

正如您先前问题的答案中所建议的那样是个好主意。

于 2012-05-03T10:21:45.780 回答