我这边有一个十万级任务,只用一个worker, 并发设到30,用for扔到celery里面执行。但是很快就发现了问题,虽然只有30个在执行,但是处于等待状态的任务对资源的消耗也是巨大的,中途如果变卦想删除任务,一删就得删半个小时,各位有什么好的思路
我这边有一个十万级任务,只用一个worker, 并发设到30,用for扔到celery里面执行。但是很快就发现了问题,虽然只有30个在执行,但是处于等待状态的任务对资源的消耗也是巨大的,中途如果变卦想删除任务,一删就得删半个小时,各位有什么好的思路
1 回答1.4k 阅读✓ 已解决
1 回答843 阅读✓ 已解决
1 回答469 阅读✓ 已解决
1 回答874 阅读
1 回答69 阅读
换种方式,用redis的队列。取一条处理一条。只开八个。
另外你开30个,是否考虑了,多线程并发gil问题?