Checklist/Docs/References

Guide ref

References

Curated links for the FastAPI production checklist and guides. Prefer official docs over random blog posts when implementing.

FastAPI and Python

ASGI and deploy

Brokers

Job and messaging frameworks

Patterns

Security and ops

This repository (in-app)

Creator

Amin Sharifi

Implementation recipes

Celery pipeline (API RL → enqueue → RabbitMQ → job RL + lock → side effect)

StepImplementation
API rate limitFastAPI dependency + Redis fixed window / token bucket → HTTP 429
EnqueueInsert jobs row → task.apply_async(..., queue="jobs.io") (Celery → RabbitMQ)
Job rate limitRedis token bucket at start of Celery task; self.retry(countdown=…) if empty
Entity lockRedis SET key token NX EX ttl; work; Lua release if token matches
Side effectVendor/DB call inside lock; mark job succeeded/failed in DB
Product statusGET /jobs/{id} from DB : not Flower

Full walkthrough with code: Celery RL + lock pipeline

text
API rate limit → enqueue → RabbitMQ
 ↓
 job rate limit + entity lock → side effect

Concepts: Locks and rate limits Celery wiring: Celery + RabbitMQ example Retries / DLQ: Error taxonomy

Official Celery references

Flower and Celery monitoring

ResourceUse
Monitoring Celery with FlowerRun Flower, events (-E), security, what to watch
Observability & metricsHealth, JSON logs, SLOs, alert severities
Flower docsUpstream project
Celery monitoringEvents, inspect, dumps

Reminder: Flower = ops UI only. User-facing job status = application jobs table.

Prometheus

Architecture diagrams

In-app SVG diagrams use CSS variables and work in light and dark themes:

Diagram idTopic
system-overviewAPI, workers, Beat, Flower, brokers
celery-pipelineAPI RL → enqueue → RMQ → job RL + lock
locks-rate-limitsRedis locks and rate limits
outboxTransactional outbox
observabilityFlower + Prometheus

Embed in guides as:

`markdown

Browse all on /docs.

Sitemap

Canonical index: `/sitemap.xml`. Declared in `/robots.txt`.

PathPriorityChange frequencyLast modified
/1.00weekly2026-08-05
/docs0.95weekly2026-08-05
/docs/01-async-vs-jobs0.80weekly2026-08-05
/docs/02-brokers-celery-redis-rabbitmq-kafka0.80weekly2026-08-05
/docs/03-job-lifecycle-and-schema0.80weekly2026-08-05
/docs/04-outbox-inbox-idempotency0.80weekly2026-08-05
/docs/05-celery-rabbitmq-example0.80weekly2026-08-05
/docs/06-taskiq-rabbitmq-example0.80weekly2026-08-05
/docs/07-dramatiq-rabbitmq-example0.80weekly2026-08-05
/docs/08-faststream-kafka-example0.80weekly2026-08-05
/docs/09-error-taxonomy-retries-dlq0.80weekly2026-08-05
/docs/10-testing-workers0.80weekly2026-08-05
/docs/11-event-driven-system-design0.80weekly2026-08-05
/docs/12-ddd-with-fastapi0.80weekly2026-08-05
/docs/13-laravel-queues-to-fastapi0.80weekly2026-08-05
/docs/14-celery-beat-scheduling0.80weekly2026-08-05
/docs/15-observability-metrics-flower0.80weekly2026-08-05
/docs/16-locks-and-rate-limits0.80weekly2026-08-05
/docs/17-celery-rate-limit-lock-pipeline0.80weekly2026-08-05
/docs/18-monitoring-celery-flower0.80weekly2026-08-05
/docs/19-flower-prometheus0.80weekly2026-08-05
/docs/REFERENCES0.75weekly2026-08-05
/llms.txt0.70weekly2026-08-05
/llms-full.txt0.85weekly2026-08-05

Priority guide

PriorityMeaning
1.00Home (primary entry)
0.95Docs hub
0.80Numbered production guides
0.75References index
0.85Full LLM corpus (llms-full.txt)
0.70Short LLM index (llms.txt)

Not listed: /login (noindex), /api/*, /auth/*.

Regenerate: node scripts/generate-sitemap.mjs