Celery с Django проблема утечки памяти. Просто не могу понять, что происходит

`Celery ведет себя странно. Он использует 5,5 Гб, что составляет около 90% оперативной памяти во время выполнения на сервере, и это замедляет работу сервера.

Отладка установлена на False.

Кроме того, я установил max_tasks_per_child на 2, но он освобождает память после выполнения задачи. Я хочу заставить его использовать меньше памяти, а он выполняет задание около 600 секунд.

celery==5.1.2 Django==3.2.4

вот моя задача, которую я пробовал:

def check_sites2(url):

    session = get_session()
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)         Chrome/107.0.0.0 Safari/537.36'
}
    try:
        response = session.head(url.url, headers=headers, timeout=21)
    except requests.exceptions.SSLError as e:
        response = session.head(url.url, verify=False, headers=headers, timeout=21)
    except Exception as e:
        print("Something went wrong {e}")


def download_all_sites(sites):
    with concurrent.futures.ThreadPoolExecutor() as executor:
        executor.map(check_sites2, sites)

@shared_task
def api_checker_stats():

    api_list = URL.objects.filter(active=True) # about 500 url objects
    download_all_sites(api_list)`
    return 1
Вернуться на верх