2012-05-03 10 views
1

私は、ユーザーが自分のために新しいインスタンスを作成するときに今、私は単に新しいsettings.pyファイルを作成ジャンゴ Django and SaaS. How to use separate database for each Django site?ジャンゴとSaaSの+ Ztask

を使用してSaaSアプリケーションを作成する方法について前に質問を彼のために、彼のサブドメインのためのApache設定を作成します。ユーザーが自分のインスタンスにアクセスしようとすると、自分のデータベースしか見ることができないため、データが完全に分離されます。

ここで、これらの別々のデータベースを持っている間にバックグラウンドプロセスを実行しようとすると問題が発生します。バックグラウンド・プロセスは、このインスタンス・データに対してのみ機能する各インスタンスに固有でなければなりません。 ZTaskデーモンは、設定ファイルを取得して開始します。問題は、Djangoのインスタンスごとに個別のztaskdプロセスを開始する必要があるかどうかです。または、すべてのインスタンスに対してztaskdを一度起動できますか?

ありがとうございます。

+1

私はこのスクリプトを使ってztaskdインスタンスを管理していますが、説明する時間がありません。これがあなたを刺激するのに役立つことを願っています。https://gist.github.com/2585486 – jpic

答えて

0

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

Djangoインスタンスごとにztaskdをローカル設定で実行する必要があります。基本的にはインスタンスごとに競合しないZTASKD_URLを持っていることを忘れないでください

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

を使用して、それを起動します。 an answer to your previous questionで提案されているようにローカルztaskd

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

のために良いアイデアです。