我已经使用django-rq为长时间运行的进程设置了系统。我的工人看起来还不错,并且说工作正常:
rq_1 | 19:29:24 default: league.jobs.sync_league(league_id=492233) (43c98835-7a6f-42b8-ba58-c9253781786f)
rq_1 | 19:29:24 default: Job OK (43c98835-7a6f-42b8-ba58-c9253781786f)
但是我的工作数据没有显示在系统中,当单击完成的工作时,我收到消息:
('Could not unpickle', UnpicklingError('pickle data was truncated'))
征服工作的视图如下:
from .jobs import sync_league
django_rq.enqueue(sync_league, league_id=league_id)
工作本身也有所缩短:
async def sync_league(league_id):
async with aiohttp.ClientSession() as session:
#more code....
for team in page_results:
team = Team.objects.get_or_create(
name=team["entry_name"], fpl_id=team["entry"]
)
team.save()
league.teams.add(team)
league.sync_team_standings()
我还尝试将作业更改为仅print(“ test”),但这会产生相同的酸洗错误。