一部のロジックを別のバッチ プロセスに移動したい Pylons アプリがあります。テスト用にメインアプリの下で実行していますが、データベースで多くの作業を行う予定であり、バックグラウンドで常に実行される別のプロセスにしたいと考えています。メインの pylons アプリがジョブをデータベースに送信し、新しいプロセスが各ジョブで要求された作業を実行します。
コントローラをスタンドアロン スクリプトとして起動するにはどうすればよいですか?
私は現在持っています:
from warehouse2.controllers import importServer
importServer.runServer(60)
およびコントローラーファイルで、ただしコントローラークラスの一部ではありません:
def runServer(sleep_secs):
try:
imp = ImportserverController()
while(True):
imp.runImport()
sleepFor(sleep_secs)
except Exception, e:
log.info("Unexpected error: %s" % sys.exc_info()[0])
log.info(e)
ただし、コマンド ラインで ImportServer.py を開始すると、次のようになります。
2008-09-25 12:31:12.687000 Could not locate a bind configured on mapper Mapper|I
mportJob|n_imports, SQL expression or this Session