Memory management 芹菜中每个任务的分叉过程
我目前使用Python的C扩展库,但它似乎存在内存泄漏。在myMemory management 芹菜中每个任务的分叉过程,memory-management,fork,multiprocessing,celery,Memory Management,Fork,Multiprocessing,Celery,我目前使用Python的C扩展库,但它似乎存在内存泄漏。在myceleryd上运行的任务使用此C扩展库执行某些操作,大约一小时后,celeryd会消耗大量内存。由于许多原因,我无法修补这个C扩展库,但我想为芹菜中的每个任务分叉进程。芹菜有这样的选项吗?您可以使用CELERYD\u MAX\u TASKS\u PER\u CHILD选项或--maxstasksparchildCELERYD开关 要在每个任务完成后重新启动工作进程,请执行以下操作: CELERYD\u MAX\u TASKS\u P
celeryd
上运行的任务使用此C扩展库执行某些操作,大约一小时后,celeryd
会消耗大量内存。由于许多原因,我无法修补这个C扩展库,但我想为芹菜中的每个任务分叉进程。芹菜有这样的选项吗?您可以使用CELERYD\u MAX\u TASKS\u PER\u CHILD
选项或--maxstasksparchild
CELERYD开关
要在每个任务完成后重新启动工作进程,请执行以下操作:
CELERYD\u MAX\u TASKS\u PER\u CHILD=1
为每项新任务提供分叉的潜在缺点是什么?