Executar Pylons controlador como aplicativo separado?
Eu tenho um aplicativo Pylons onde gostaria de mover parte da lógica para um processo em lote separado. Eu tenho corrido sob o aplicativo principal para testes, mas ele vai estar fazendo muito trabalho no banco de dados, e eu gostaria que fosse um processo separado que será executado em segundo plano constantemente. O aplicativo principal pilões irá enviar trabalhos para o banco de dados, e o novo processo fará o trabalho solicitado em cada trabalho.
Como posso iniciar um controlador como um script independente?
Atualmente tenho:
from warehouse2.controllers import importServer
importServer.runServer(60)
e no arquivo do controlador, mas não faz parte da classe do controlador:
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)
Mas iniciar o ImportServer.py na linha de comando resulta em:
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