1

以前、DjangoDjangoとSaaSを使用してSaaSアプリケーションを作成する方法について質問しました 。Djangoサイトごとに個別のデータベースを使用するにはどうすればよいですか?

これで、ユーザーが自分用に新しいインスタンスを作成するときに、ユーザー用に新しいsettings.pyファイルを作成し、サブドメイン用にapache構成を作成するだけです。これで、ユーザーが自分のインスタンスにアクセスしようとすると、自分のデータベースしか表示されないため、データが完全に分離されます。

これらの個別のデータベースを使用しているときにバックグラウンドプロセスを実行しようとすると、問題が発生します。バックグラウンドプロセスは、このインスタンスデータのみに作用する各インスタンスに固有である必要があります。ZTaskデーモンは、設定ファイルを取得して開始します。問題は、Djangoインスタンスごとに個別のztaskdプロセスを開始する必要があるかどうかです。または、すべてのインスタンスに対してztaskdを1回開始できますか?

4

1 に答える 1

0

ztaskd特定のDjangoインスタンスのコンテキスト内で機能するため、1つのZTaskデーモンを複数のDjangoインスタンスで共有することはできません。

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 に答える