Task Framework Architecture
Why Pub/Sub?
How we use Pub/Sub
Message Flow
On-Demand Task Execution
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Python Code │ │ Pub/Sub │ │ Cloud Run │
│ │ │ │ │ │
│ task.enqueue() ├────►│ Topic ├────►│ /tasks/pubsub/ │
│ │ │ │ │ │ │ │
└─────────────────┘ │ ▼ │ │ ▼ │
│ Subscription │ │ Task Function │
│ (push) │ │ │
└─────────────────┘ └─────────────────┘Scheduled Task Execution
Infrastructure Provisioning
When Does Provisioning Run?
What Gets Provisioned?
Idempotency
Orphan Cleanup
Security Model
OIDC Authentication
Why Not Use Pub/Sub Pull?
Error Handling and Retries
Response Code Semantics
Code
Meaning
Retry?
Backpressure
Retry Policy
Development vs Production
Aspect
Development
Production
Future Considerations
Deferred Execution
Task Results
Dead Letter Queues
Last updated