airflow.providers.celery.executors.celery_executor

CeleryExecutor。

另請參閱

如需 CeleryExecutor 運作方式的詳細資訊,請參閱指南: Celery Executor

模組內容

類別

CeleryExecutor

建議在 Airflow 的生產環境中使用 CeleryExecutor。

函數

__getattr__(name)

屬性

log

CELERY_SEND_ERR_MSG_HEADER

TaskInstanceInCelery

ARG_BROKER_API

ARG_FLOWER_HOSTNAME

ARG_FLOWER_PORT

ARG_FLOWER_CONF

ARG_FLOWER_URL_PREFIX

ARG_FLOWER_BASIC_AUTH

ARG_AUTOSCALE

ARG_QUEUES

ARG_CONCURRENCY

ARG_CELERY_HOSTNAME

ARG_UMASK

ARG_WITHOUT_MINGLE

ARG_WITHOUT_GOSSIP

CELERY_CLI_COMMAND_PATH

CELERY_COMMANDS

airflow.providers.celery.executors.celery_executor.log[source]
airflow.providers.celery.executors.celery_executor.CELERY_SEND_ERR_MSG_HEADER = 'Error sending Celery task'[source]
airflow.providers.celery.executors.celery_executor.TaskInstanceInCelery[source]
airflow.providers.celery.executors.celery_executor.__getattr__(name)[source]
airflow.providers.celery.executors.celery_executor.ARG_BROKER_API[source]
airflow.providers.celery.executors.celery_executor.ARG_FLOWER_HOSTNAME[source]
airflow.providers.celery.executors.celery_executor.ARG_FLOWER_PORT[source]
airflow.providers.celery.executors.celery_executor.ARG_FLOWER_CONF[source]
airflow.providers.celery.executors.celery_executor.ARG_FLOWER_URL_PREFIX[source]
airflow.providers.celery.executors.celery_executor.ARG_FLOWER_BASIC_AUTH[source]
airflow.providers.celery.executors.celery_executor.ARG_AUTOSCALE[source]
airflow.providers.celery.executors.celery_executor.ARG_QUEUES[source]
airflow.providers.celery.executors.celery_executor.ARG_CONCURRENCY[source]
airflow.providers.celery.executors.celery_executor.ARG_CELERY_HOSTNAME[source]
airflow.providers.celery.executors.celery_executor.ARG_UMASK[source]
airflow.providers.celery.executors.celery_executor.ARG_WITHOUT_MINGLE[source]
airflow.providers.celery.executors.celery_executor.ARG_WITHOUT_GOSSIP[source]
airflow.providers.celery.executors.celery_executor.CELERY_CLI_COMMAND_PATH[source]
airflow.providers.celery.executors.celery_executor.CELERY_COMMANDS = ()[source]
class airflow.providers.celery.executors.celery_executor.CeleryExecutor[source]

Bases: airflow.executors.base_executor.BaseExecutor

建議在 Airflow 的生產環境中使用 CeleryExecutor。

它允許將任務實例的執行分散到多個 worker 節點。

Celery 是一個簡單、彈性且可靠的分散式系統,用於處理大量的訊息,同時為運營提供維護此類系統所需的工具。

supports_ad_hoc_ti_run: bool = True[source]
supports_sentry: bool = True[source]
start()[source]

執行器可能需要啟動一些事項。

sync()[source]

Sync 將會由 heartbeat 方法定期呼叫。

執行器應該覆寫此方法以執行收集狀態。

debug_dump()[source]

除錯傾印;由排程器呼叫以回應 SIGUSR2。

update_all_task_states()[source]

更新任務的狀態。

change_state(key, state, info=None, remove_running=True)[source]

變更任務的狀態。

參數
update_task_state(key, state, info)[source]

更新單一任務的狀態。

end(synchronous=False)[source]

同步等待先前提交的工作完成。

terminate()[source]

當 daemon 接收到 SIGTERM 時呼叫。

try_adopt_task_instances(tis)[source]

嘗試採用因 SchedulerJob 終止而遭遺棄的執行中任務實例。

任何未被採用的項目都將由排程器清除(然後變得符合重新排程的條件)

回傳

任何無法採用的 TaskInstance

回傳類型

collections.abc.Sequence[airflow.models.taskinstance.TaskInstance]

cleanup_stuck_queued_tasks(tis)[source]

從執行器移除卡在佇列中的任務並使其失敗。

此方法已過時。請改用 cleanup_tasks_stuck_in_queued

revoke_task(*, ti)[source]

嘗試從執行器移除任務。

它應嘗試確保任務不再於 worker 上執行,並確保從內部資料結構中清除。

它*不應*變更 airflow 中任務的狀態,或將任何事件新增至事件緩衝區。

它不應引發任何錯誤。

參數

ti (airflow.models.taskinstance.TaskInstance) – 要移除的任務實例

static get_cli_commands()[source]

提供要包含在 Airflow CLI 中的 CLI 命令。

覆寫此方法以透過 Airflow CLI 公開命令來管理此執行器。這可以是設定/關閉執行器、檢查狀態等的命令。請確保為這些命令選擇唯一的名稱,以避免衝突。

此條目是否有幫助?