외부 API에 연결하여 일부 데이터를 검색하고 데이터베이스에 저장 한 다음 수백 번 반복하는 Heroku에서 셀로 작업을했습니다. 매우 빨리 (~ 10 루프 이후) Heroku는 높은 메모리 사용량에 대한 경고를 시작합니다. 어떤 아이디어?Heroku에 대한 Django Celery 작업이 높은 메모리 사용을 초래합니다.
tasks.py
@app.task
def retrieve_details():
for p in PObj.objects.filter(some_condition=True):
p.fetch()
models.py
def fetch(self):
v_data = self.service.getV(**dict(
Number=self.v.number
))
response = self.map_response(v_data)
for key in ["some_key","some_other_key",]:
setattr(self.v, key, response.get(key))
self.v.save()
Heroky 로그
2017-01-01 10:26:25.634
132 <45>1 2017-01-01T10:26:25.457411+00:00 heroku run.5891 - - Error R14 (Memory quota exceeded)
Go to the log: https://api.heroku.com/myapps/[email protected]/addons/logentries
You are receiving this email because your Logentries alarm "Memory quota exceeded"
has been triggered.
In context:
2017-01-01 10:26:25.568 131 <45>1 2017-01-01T10:26:25.457354+00:00 heroku run.5891 - - Process running mem=595M(116.2%)
2017-01-01 10:26:25.634 132 <45>1 2017-01-01T10:26:25.457411+00:00 heroku run.5891 - - Error R14 (Memory quota exceeded)
'fetch'에서 호출 한 메서드 본문을 게시 할 수 있습니까? – 2ps