Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用redis作为代理和结果后端的Airflow Cellery executor产生太多redis连接_Python_Redis_Celery_Airflow - Fatal编程技术网

Python 使用redis作为代理和结果后端的Airflow Cellery executor产生太多redis连接

Python 使用redis作为代理和结果后端的Airflow Cellery executor产生太多redis连接,python,redis,celery,airflow,Python,Redis,Celery,Airflow,我们使用Airflow调度任务,芹菜作为执行者,代理和结果后端都是redis。现在有200多个队列和100多个工作人员,redis连接达到9200多个,这非常接近redis最大连接阈值10000 我尝试了两种方法来减少redis连接,但都不太管用,我尝试的方法是: 在@app.task()中设置ignore\u result=True,此方法可以显著减少redis连接,但芹菜中的任务状态将被忽略,如果任务失败,则无法在Airflow中调度任务,因为调度程序无法获取芹菜中任务失败的信息 设置BRO

我们使用Airflow调度任务,芹菜作为执行者,代理和结果后端都是redis。现在有200多个队列和100多个工作人员,redis连接达到9200多个,这非常接近redis最大连接阈值10000

我尝试了两种方法来减少redis连接,但都不太管用,我尝试的方法是:

  • @app.task()
    中设置
    ignore\u result=True
    ,此方法可以显著减少redis连接,但芹菜中的任务状态将被忽略,如果任务失败,则无法在Airflow中调度任务,因为调度程序无法获取芹菜中任务失败的信息
  • 设置
    BROKER\u POOL\u LIMIT=0
    ,此方法可以稍微减少redis连接,将此配置添加到afflow.cfg后,没有运行任务的队列的redis连接从10减少到8
  • 我已经将芹菜从4.0.2升级到4.1.0,但是问题仍然存在,有没有其他方法可以正确解决这个问题