1
Celery의주기 함수를 사용하여 데이터베이스의 일괄 업데이트를 수행하고 있습니다. 삽입 될 데이터는 동일한 스크립트의 다른 함수에 의해 전역 목록에 저장됩니다. 문제는 Periodic 함수가 실행될 때마다 목록이 빈 것으로 표시된다는 것입니다.Celery의주기 함수와 Python의 함수간에 전역 변수를 공유하는 방법
코드 조각 같은 위해 다음과 같은 :
이client = MongoClient('localhost:27017')
db = client.module_data
batchData = []
@periodic_task(run_every=(crontab(minute='*/1')), name='Batch_Update')
def batchUpdate():
global batchData
print batchData
if len(batchData)>0:
db.logs.insert_many([_data for _data in batchData])
def writeLog(event='', method='', execution_time=0.0):
global batchData
if event=='' or method=='' or execution_time==0.0:
return
_date = datetime.now()
_data = {'event':event, 'method':method, 'execution_time':execution_time, 'date':_date}
#db.logs.insert(_data)
batchData.append(_data)
print batchData
사람이 나를 도와 드릴까요?