Celery Development Best Practices
Umfassendes Framework zur Hintergrundverarbeitung mit 60+ priorisierten Regeln in 21 Kategorien für den Aufbau zuverlässiger, skalierbarer verteilter Tasksysteme mit Celery.
Anwendungsfälle
Diese Richtlinien sind zu verwenden, wenn:
- Hintergrundaufgaben verarbeitet werden
- Verteilte Job-Warteschlangen eingerichtet werden
- Periodische Aufgaben mit Celery Beat konfiguriert werden
- Aufgabenperformance und -zuverlässigkeit optimiert werden
- Celery-Anwendungen überwacht und debuggt werden
- Aufgaben-Routing und Ergebnisverarbeitung implementiert werden
- Celery-Worker und -Broker verwaltet werden
- Sicherheit in verteilten Aufgabenumgebungen gewährleistet wird
- Komplexe Workflows mit Canvas-Primitiven entworfen werden
- Serialisierung und Datenübertragung gehandhabt werden
- Celery in Produktionsumgebungen bereitgestellt wird
Regelkategorien nach Priorität
| Priorität | Kategorie | Regeln | Auswirkung | Präfix |
|---|---|---|---|---|
| 1 | Konfiguration & Setup | 2 | KRITISCH | config- |
| 2 | Aufgaben-Definition & Ausführung | 3 | KRITISCH | task- |
| 3 | Fehlerbehandlung & Zuverlässigkeit | 1 | HOCH | error- |
| 4 | Canvas: Workflows entwerfen | 4 | HOCH | canvas- |
| 5 | Überwachung & Protokollierung | 2 | HOCH | monitoring- / perf- |
| 6 | Performance & Skalierung | 2 | MITTEL-HOCH | perf- |
| 7 | Sicherheit | 1 | MITTEL-HOCH | security- |
| 8 | Ergebnis-Backends | 2 | MITTEL-HOCH | result- |
| 9 | Routing & Warteschlangen | 1 | MITTEL | routing- |
| 10 | Periodische Aufgaben | 1 | MITTEL | periodic- |
| 11 | Serialisierung | 1 | MITTEL | serial- |
| 12 | Worker-Verwaltung | 1 | MITTEL | worker- |
| 13 | Signale und Ereignisse | 1 | MITTEL | signals- |
| 14 | Fernsteuerung und Inspektion | 1 | MITTEL | remote- |
| 15 | Testen von Celery-Anwendungen | 1 | MITTEL-HOCH | testing- |
| 16 | Daemonisierung und Prozessverwaltung | 1 | MITTEL | daemonization- |
| 17 | Debuggen von Celery-Anwendungen | 1 | HOCH | debugging- |
| 18 | Erweiterungen und Bootsteps-Anpassung | 1 | NIEDRIG | extensions- |
| 19 | Fortgeschrittene Muster | 1 | NIEDRIG | advanced- |
Kurzreferenz
1. Konfiguration & Setup (KRITISCH)
config-broker-setup: Nachrichtenbroker korrekt konfigurieren (Redis/RabbitMQ)config-environment-separation: Konfigurationen für verschiedene Umgebungen trennen
2. Aufgaben-Definition & Ausführung (KRITISCH)
task-calling-methods: Geeignete Aufrufmethoden wählen (delay/apply_async/call)task-atomic-operations: Sicherstellen, dass Aufgaben atomar und idempotent sind
3. Fehlerbehandlung & Zuverlässigkeit (HOCH)
error-retry-strategy: Intelligente Wiederholungsmechanismen implementieren
2. Aufgaben-Definition & Ausführung (KRITISCH)
task-calling-methods: Geeignete Aufrufmethoden wählen (delay/apply_async/call)task-atomic-operations: Sicherstellen, dass Aufgaben atomar und idempotent sindtask-options-configuration: Aufgabenverhalten und Zuverlässigkeitsoptionen konfigurieren
3. Fehlerbehandlung & Zuverlässigkeit (HOCH)
error-retry-strategy: Intelligente Wiederholungsmechanismen implementieren
4. Canvas: Workflows entwerfen (HOCH)
canvas-chain-workflows: Sequenzielle Aufgabenausführung und Fehlerweitergabecanvas-group-parallel: Parallele Aufgabenausführung für bessere Performancecanvas-chord-synchronization: Komplexe Workflows mit paralleler Ausführung und Synchronisationcanvas-map-starmap: Effiziente Stapelverarbeitung und Datentransformationen
5. Überwachung & Protokollierung (HOCH)
monitoring-task-tracking: Aufgabenausführung und -performance verfolgenperf-monitoring-metrics: Performanceoptimierung und Fehlererkennung
6. Performance & Skalierung (MITTEL-HOCH)
perf-concurrency-tuning: Worker-Parallelität optimieren
7. Sicherheit (MITTEL-HOCH)
security-task-authentication: Unautorisierte Aufgabenausführung verhindern
8. Ergebnis-Backends (MITTEL-HOCH)
result-backend-selection: Geeignetes Ergebnis-Backend wählenresult-expiry-management: Ablaufrichtlinien für Ergebnisse verwalten
9. Routing & Warteschlangen (MITTEL)
routing-task-distribution: Intelligentes Aufgaben-Routing und Warteschlangenverwaltung
10. Periodische Aufgaben (MITTEL)
periodic-celery-beat: Zuverlässige Ausführung geplanter Aufgaben
11. Serialisierung (MITTEL)
serial-data-handling: Zuverlässige Datenübertragung und -speicherung
12. Worker-Verwaltung (MITTEL)
worker-lifecycle-management: Zuverlässiger Worker-Betrieb und Ressourcenverwaltung
13. Signale und Ereignisse (MITTEL)
signals-events-system: In Celery-Ereignisse einhaken für Überwachung und Erweiterung
14. Fernsteuerung und Inspektion (MITTEL)
remote-control-inspection: Laufzeitverwaltung und Fehlerbehebung von Workern
15. Testen von Celery-Anwendungen (MITTEL-HOCH)
testing-celery-applications: Umfassende Teststrategien für asynchrone Anwendungen
16. Daemonisierung und Prozessverwaltung (MITTEL)
daemonization-process-management: Produktionsbereitstellung und Diensteverwaltung
17. Debuggen von Celery-Anwendungen (HOCH)
debugging-celery-applications: Effektive Fehlersuche und Problemlösung
18. Fortgeschrittene Performance-Optimierung (MITTEL-HOCH)
advanced-performance-optimization: Optimierungstechniken für hohen Durchsatz
19. Erweiterungen und Bootsteps-Anpassung (NIEDRIG)
extensions-bootsteps-customization: Fortgeschrittene Anpassung und Erweiterung
20. Fortgeschrittene Muster (NIEDRIG)
advanced-task-chaining: Orchestrierung komplexer Workflows
Verwendung
Einzelne Regeldateien für detaillierte Erklärungen und Codebeispiele lesen:
rules/config-broker-setup.md # Broker-Konfiguration
rules/task-calling-methods.md # Aufgabenausführungsmethoden
rules/task-options-configuration.md # Optionen für Aufgabenverhalten
rules/canvas-chain-workflows.md # Sequenzielle Workflows
rules/canvas-group-parallel.md # Parallele Ausführung
rules/canvas-chord-synchronization.md # Komplexe Synchronisation
rules/canvas-map-starmap.md # Stapelverarbeitung
rules/monitoring-task-tracking.md # Aufgabenüberwachung
rules/result-backend-selection.md # Ergebnis-Speicherung
rules/routing-task-distribution.md # Aufgaben-Routing
rules/periodic-celery-beat.md # Geplante Aufgaben
rules/serial-data-handling.md # Datenserialisierung
rules/signals-events-system.md # Ereignis-Hooking
rules/remote-control-inspection.md # Worker-Verwaltung
rules/testing-celery-applications.md # Teststrategien
rules/security-task-authentication.md # Aufgabensicherheit
rules/daemonization-process-management.md # Produktionsbereitstellung
rules/debugging-celery-applications.md # Fehlerbehebung
rules/advanced-performance-optimization.md # Hochleistungsoptimierung
rules/extensions-bootsteps-customization.md # Fortgeschrittene Anpassung
Jede Regeldatei enthält:
- Auswirkungsstufe und Kategorie
- Problembeschreibung mit Konsequenzen
- Lösung mit Codebeispielen
- Häufige Fehler, die vermieden werden sollten
- Wann die Regel anzuwenden ist
Referenzdokumentation
Detaillierte Anleitungen für komplexe Themen:
references/worker-management.md # Worker-Bereitstellung und Skalierung
Weitere Referenzanleitungen geplant: Überwachungseinrichtung, Fehlerbehebung, Canvas-Muster
Vollständiges kompiliertes Dokument
Für die vollständige Celery-Best-Practices-Anleitung mit allen erweiterten Regeln siehe: AGENTS.md
Celery-Versionsunterstützung: Kompatibel mit Celery 4.x, 5.x und 6.x (aktuellste)