2012-10-30 2 views
2

appFog 웹 사이트에서 APScheduler를 사용하여 Python 백그라운드 작업자를 만들면이 작업을 시도해 보았습니다.AppFog에서 파이썬 독립 실행 형 응용 프로그램을 만들 수있는 해결 방법이 필요합니다.

APScheduler==2.0.3 
MySQL-python==1.2.4b5 

그러나 appFog에 밀어 때 다음과 같은 오류 있어요 :

====> /logs/stderr.log <==== 
Traceback (most recent call last): 
    File "testConnectionDB.py", line 3, in <module> 
    from apscheduler.scheduler import Scheduler 
ImportError: No module named apscheduler.scheduler 
을 나는 다음 줄을 포함하는 ( pip freeze로 만든)를 requirements.txt 파일을 간단한 파이썬 독립 실행 형 응용 프로그램을 밀어 시도

그래서 나는 requirements.txt 파일을 읽지 못했을 것으로 추측했다. appFog 지원팀은 독립 실행 형 응용 프로그램에서 실제로 지원되지 않는다는 것을 확인했습니다. 즉, 독립 실행 형 응용 프로그램은 appfog에서 라이브러리를 가져올 수 없으므로 사용이 제한됩니다.

그래서 누군가가 이미이 경험을했는지, 누군가 해결 방법을 찾았는지 궁금합니다. 루비에서하지 않거나 다른 플랫폼으로 전환하는 것을 선호합니다. 일반 파이썬 또는 장고 - 파이썬 응용 프로그램에서이 작업을 수행 할 수 있습니까?

답변

2

독립 실행 형 앱 (CherryPy와 같은 웹 인터페이스 추가)에서 실행 해 보았습니까? 그러면 requirements.txt를 컴파일하고 독립형 앱 문제에서 벗어날 수 있습니다. 위의

는 어쨌든 루비 애플 리케이션 :)에 제한을 극복하는 방법이다

+0

팁 주셔서 감사합니다. 백그라운드에서 독립형 앱을 어떻게 시작 하시겠습니까? – RockridgeKid

+1

실제로 웹 직면 인터페이스 사용하기. 웹에서 액세스 할 수있는 앱 조각은 단지 자리 표시 자일뿐입니다 (기능 없음). 특히 webapp 대신 실제 백그라운드 스케줄러를 호출하도록 명령을 수정하십시오 (저는 개인적으로 python flask를 제안합니다). –

+0

안녕하세요, 기본 플라스크 웹 앱을 설치했고 예를 들어'@ app.route '/ 스케줄러')'. 그러나 APScheduler는 백그라운드 작업자로 사용되지 않으므로 시간 초과되었습니다. 플라스크 사용에 관한 귀하의 메시지를 오해 했습니까? 아니면 추가 대기열 시스템이 필요합니까? – RockridgeKid

0

UPDATE :

나는 실제로 웹 응용 프로그램에서 내 스크립트를 호출로 해결하지 않고이 문제를 해결 할 수 있었다. 나는 이것이 더 나은 진정한 독립형 해결 방법이라고 생각한다.

그것은 기본적으로 가 생성 바이너리/실행 파일을 호출 할 실행 파이썬 스크립트를 생성 한 후 실행로 스크립트를 포장하고 포함한다.

자세한 내용은 내 blog에서 읽을 수 있습니다.


나는 또한 동일한 문제를 겪고있었습니다. 필자는 스크립트를 호출하기 위해 웹 애플리케이션을 중심으로 작업하고 싶지 않았지만 최선의 방법이라고 생각했습니다.

나는 Flask로 그 작업을 관리하고 내 배경 작업자 스크립트라고 부르는 경로를 만들었습니다. 나는 APScheduler를 사용하지 않았다, 좋은 오래된 os.system() 그리고 그것은 충분히 안정적으로 보였다.

나는 그것에 대해 blog에 대해 자세히 썼다.

+3

링크에 도달 할 수 없습니다. – alexblum